...
 
Commits (12)
# Partie 1
## Sous-partie 1 : texte
Une phrase sans rien
*Une phrase en italique*
**Une phrase en gras**
[Un lien vers fun-mooc.fr](https://fun-mooc.fr)
`Une ligne de code`
## Sous-partie 2 : listes
- Liste à puce
- item
- sous-item
- sous-item
- item
- item
1. Liste numérotée
2. item
3. item
4. item
## Sous-partie 3 : code
```python
# Extrait de code
# Journal de Bord
## Introduction
Ce journal de bord contient les notes et les observations pendant la durée du MOOC.
## [9/13/2024]
- **Ce que j'ai appris aujourd'hui :**
- **Fonctionnalité de recherche dans GitLab :**
- J'ai appris à utiliser la fonction de recherche de GitLab pour trouver des chaînes de caractères dans un dépôt. Cela m'a permis de localiser des fichiers spécifiques et des modifications dans le projet. J'ai utilisé cette fonctionnalité pour rechercher et identifier des fichiers contenant une chaîne de texte précise.
- **Gestion de l'historique des versions avec GitLab :**
- J'ai exploré comment utiliser les fonctions "blame" et "history" dans GitLab pour retracer les modifications apportées à un fichier spécifique. J'ai trouvé l'engagement qui a ajouté le titre "Helloworld Python" au fichier `module1/exo2/readme.md`.
- **Création et gestion de fichiers Markdown :**
- J'ai appris à créer un fichier Markdown dans GitLab, en ajoutant des titres, des listes, et des blocs de code. J'ai utilisé des balises Markdown pour structurer et formater le contenu du fichier.
- **Utilisation de GitLab pour la gestion des journaux de bord :**
- J'ai commencé à créer un journal de bord pour documenter mes apprentissages et mes observations au fur et à mesure de l'avancement du MOOC. J'ai compris l'importance de sauvegarder et de commettre régulièrement les modifications.
- **Références utiles :**
- [Documentation GitLab](https://docs.gitlab.com)
- [Guide Markdown](https://www.markdownguide.org/basic-syntax/)
- **Données quotidiennes :**
- Temps passé sur les cours : 2 heures
- Autres observations : La fonctionnalité de recherche de GitLab est très utile pour gérer des projets complexes avec de nombreux fichiers. La création d’un journal de bord en Markdown est une bonne pratique pour suivre et structurer les informations apprises.
# Toy Notebook
# **Date:** March 28, 2019
## 1. À propos du calcul de π
### 1.1 En demandant à la lib maths
### Mon ordinateur m’indique que π vaut approximativement:
from math import *
print(pi)
## 1.2 En utilisant la méthode des aiguilles de Buffon
## Mais calculé avec la méthode des [aiguilles de Buffon](https://fr.wikipedia.org/wiki/Aiguille_de_Buffon), on obtiendrait comme approximation :
import numpy as np
np.random.seed(seed=42)
N = 10000
x = np.random.uniform(size=N, low=0, high=1)
theta = np.random.uniform(size=N, low=0, high=np.pi/2)
2/(sum((x+np.sin(theta))>1)/N)
## 1.3 Avecunargument "fréquentiel" de surface
## Sinon, une méthode plus simple à comprendre et ne faisant pas intervenir d’appel à la fonction sinus se base sur le fait que si X ∼ U(0,1) et Y ∼ U(0,1) alors P[$$X^2 + Y^2$$ ≤ 1] = π/4 ([Méthode de Monte Carlo sur Wikipedia](https://fr.wikipedia.org/wiki/M%C3%A9thode_de_Monte-Carlo#D%C3%A9termination_de_la_valeur_de_%CF%80)). Le code suivant illustre ce fait :
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(seed=42)
N = 1000
x = np.random.uniform(size=N, low=0, high=1)
y = np.random.uniform(size=N, low=0, high=1)
accept = (x*x + y*y) <= 1
reject = np.logical_not(accept)
fig, ax = plt.subplots(1)
ax.scatter(x[accept], y[accept], c='b', alpha=0.2, edgecolor=None)
ax.scatter(x[reject], y[reject], c='r', alpha=0.2, edgecolor=None)
ax.set_aspect('equal')
## Il est alors aisé d’obtenir une approximation (pas terrible) de π en comptant combien de fois, en moyenne, $$X^2 + Y^2$$ est inférieur à 1 :
4 * np.mean(accept)
Date,Activity,Duration,Mood
2024-09-13,Work,3,5
2024-09-13,Exercise,1,4
2024-09-16,Work,3,4
2024-09-16,Exercise,1,5
import pandas as pd
import matplotlib.pyplot as plt
# Load the data
data = pd.DataFrame({
'Date': ['2024-09-13', '2024-09-13', '2024-09-16', '2024-09-16'],
'Activity': ['Work', 'Exercise', 'Work', 'Exercise'],
'Duration': [3, 1, 3, 1],
'Mood': [5, 4, 4, 5]
})
# Convert 'Date' column to datetime format
data['Date'] = pd.to_datetime(data['Date'])
# Display the first few rows of the dataset
print("Data Overview:")
print(data)
# Basic Statistics
print("\nBasic Statistics:")
print(data.describe(include='all'))
# Additional Statistics
mean_duration = data['Duration'].mean()
median_mood = data['Mood'].median()
print(f"\nAverage Duration: {mean_duration:.2f}")
print(f"Median Mood: {median_mood:.2f}")
# Plot Duration Over Time using Matplotlib
plt.figure(figsize=(12, 6))
for activity in data['Activity'].unique():
subset = data[data['Activity'] == activity]
plt.plot(subset['Date'], subset['Duration'], marker='o', linestyle='-', label=activity)
plt.title('Daily Duration of Activities')
plt.xlabel('Date')
plt.ylabel('Duration (hours)')
plt.legend(title='Activity')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
# Histogram of Mood Ratings using Matplotlib
plt.figure(figsize=(8, 6))
plt.hist(data['Mood'], bins=5, color='skyblue', edgecolor='black')
plt.title('Distribution of Mood Ratings')
plt.xlabel('Mood Rating')
plt.ylabel('Frequency')
plt.show()