resultb

parent e8adce4a
......@@ -9,7 +9,7 @@
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
......@@ -22,7 +22,7 @@
},
{
"cell_type": "code",
"execution_count": 4,
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
......@@ -32,7 +32,7 @@
},
{
"cell_type": "code",
"execution_count": 5,
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
......@@ -47,7 +47,7 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 4,
"metadata": {},
"outputs": [
{
......@@ -73,7 +73,7 @@
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
......@@ -83,7 +83,7 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 6,
"metadata": {},
"outputs": [
{
......@@ -113,7 +113,7 @@
},
{
"cell_type": "code",
"execution_count": 9,
"execution_count": 39,
"metadata": {},
"outputs": [
{
......@@ -130,7 +130,7 @@
}
],
"source": [
"# Réalisation du graphique pour montrer l'oscillation (300 dernières lignes du tableau)\n",
"# Réalisation du graphique complet. Réalisation du graphique pour montrer l'oscillation (300 dernières lignes du tableau)\n",
"plt.figure(figsize=(15, 6))\n",
"plt.plot(data['Date'][-300:], data['Concentration'][-300:], label='CO2 Concentration')\n",
"plt.title('CO2 Concentration Over Time')\n",
......@@ -143,7 +143,7 @@
},
{
"cell_type": "code",
"execution_count": 10,
"execution_count": 8,
"metadata": {},
"outputs": [
{
......@@ -169,7 +169,7 @@
},
{
"cell_type": "code",
"execution_count": 11,
"execution_count": 9,
"metadata": {},
"outputs": [
{
......@@ -193,7 +193,7 @@
},
{
"cell_type": "code",
"execution_count": 12,
"execution_count": 38,
"metadata": {},
"outputs": [
{
......@@ -210,7 +210,7 @@
}
],
"source": [
"# Création du graphique pour montrer la concentration moyenne de CO2 par an au fil du temps\n",
"# Contribution lente. Création du graphique pour montrer la concentration moyenne de CO2 par an au fil du temps\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(data['Date'], data['Mean_CO2_Concentration'], label='Mean CO2 Concentration per Year Over Time')\n",
"plt.title('Mean CO2 Concentration per Year Over Time')\n",
......@@ -222,7 +222,7 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 11,
"metadata": {},
"outputs": [
{
......@@ -246,7 +246,7 @@
},
{
"cell_type": "code",
"execution_count": 14,
"execution_count": 41,
"metadata": {},
"outputs": [
{
......@@ -263,7 +263,7 @@
}
],
"source": [
"# Création du graphique pour montrer l'oscillation de la concentration de CO2 par an au fil du temps\n",
"# Oscillation périodique. Création du graphique pour montrer l'oscillation de la concentration de CO2 au fil du temps\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(data['Date'], data['Oscilation'], label='Oscilation CO2 Concentration Over Time')\n",
"plt.title('Oscilation CO2 Concentration Over Time')\n",
......@@ -275,7 +275,7 @@
},
{
"cell_type": "code",
"execution_count": 15,
"execution_count": 43,
"metadata": {},
"outputs": [
{
......@@ -292,7 +292,7 @@
}
],
"source": [
"# Création du graphique pour montrer l'oscillation de la concentration de CO2 par an au fil du temps (300 dernières lignes du tableau)\n",
"# Oscillation périodique. Création du graphique pour montrer l'oscillation de la concentration de CO2 au fil du temps (300 dernières lignes du tableau)\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(data['Date'][-300:], data['Oscilation'][-300:], label='Oscilation CO2 Concentration Over Time')\n",
"plt.title('Oscilation CO2 Concentration Over Time')\n",
......@@ -304,18 +304,18 @@
},
{
"cell_type": "code",
"execution_count": 16,
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"# Modéliser la évolution lente pour extrapolation jusqu’en 2025\n",
"# Contribution lente. Modéliser la évolution lente pour extrapolation jusqu’en 2025\n",
"import numpy as np\n",
"from sklearn.linear_model import LinearRegression"
]
},
{
"cell_type": "code",
"execution_count": 17,
"execution_count": 44,
"metadata": {},
"outputs": [
{
......@@ -331,7 +331,7 @@
}
],
"source": [
"# Modéliser une évolution lente en utilisant la régression linéaire\n",
"# Contribution lente. Modéliser une évolution lente en utilisant la régression linéaire\n",
"X = np.arange(len(data)).reshape(-1, 1) # Variable indépendante : nombre de semaines\n",
"y = data['Mean_CO2_Concentration'].values.reshape(-1, 1) # Variable dépendante : concentration de CO2\n",
"\n",
......@@ -362,7 +362,7 @@
},
{
"cell_type": "code",
"execution_count": 34,
"execution_count": 45,
"metadata": {},
"outputs": [
{
......@@ -374,7 +374,7 @@
}
],
"source": [
"# Caractériser l’oscillation\n",
"# Oscillation périodique. Caractériser l’oscillation\n",
"import numpy as np\n",
"# from scipy.fft import fft \n",
"# fft de scipy.fft, a des problèmes de chargement, il se peut que nous utilisions une version de SciPy antérieure à 1.4.0. La fonction fft a été ajoutée dans SciPy version 1.4.0.\n",
......@@ -384,7 +384,7 @@
},
{
"cell_type": "code",
"execution_count": 35,
"execution_count": 17,
"metadata": {},
"outputs": [
{
......@@ -406,7 +406,7 @@
},
{
"cell_type": "code",
"execution_count": 36,
"execution_count": 46,
"metadata": {},
"outputs": [
{
......@@ -419,7 +419,7 @@
}
],
"source": [
"# Calculer la transformée de Fourier de la série chronologique des anomalies CO2\n",
"# Oscillation périodique. Calculer la transformée de Fourier de la série chronologique des anomalies CO2\n",
"co2_anomaly_fft = np.fft.fft(data['Oscilation'])\n",
"\n",
"# Calculer les fréquences correspondant aux composantes de Fourier\n",
......@@ -437,25 +437,25 @@
},
{
"cell_type": "code",
"execution_count": 38,
"execution_count": 47,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Comment caractériser l'oscillation en calculant la transformée de Fourier donne des valeurs pas faciles à comprendre a priori, une autre manière est choisie pour caractériser l'oscillation\n"
"Comment caractériser l'oscillation périodique en calculant la transformée de Fourier donne des valeurs pas faciles à comprendre a priori, une autre manière est choisie pour caractériser l'oscillation\n"
]
}
],
"source": [
"# Comment caractériser l'oscillation en calculant la transformée de Fourier donne des valeurs pas faciles à comprendre a priori, une autre manière est choisie pour caractériser l'oscillation\n",
"print(\"Comment caractériser l'oscillation en calculant la transformée de Fourier donne des valeurs pas faciles à comprendre a priori, une autre manière est choisie pour caractériser l'oscillation\")"
"print(\"Comment caractériser l'oscillation périodique en calculant la transformée de Fourier donne des valeurs pas faciles à comprendre a priori, une autre manière est choisie pour caractériser l'oscillation\")"
]
},
{
"cell_type": "code",
"execution_count": 22,
"execution_count": 48,
"metadata": {},
"outputs": [
{
......@@ -472,7 +472,7 @@
}
],
"source": [
"# Création du graphique pour montrer l'oscillation de la concentration de CO2 par an au fil du temps (300 dernières lignes du tableau)\n",
"# Oscillation périodique. Création du graphique pour montrer l'oscillation de la concentration de CO2 au fil du temps (300 dernières lignes du tableau)\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(data['Date'][-300:], data['Oscilation'][-300:], label='Oscilation CO2 Concentration Over Time')\n",
"plt.title('Oscilation CO2 Concentration Over Time')\n",
......@@ -484,7 +484,7 @@
},
{
"cell_type": "code",
"execution_count": 39,
"execution_count": 24,
"metadata": {},
"outputs": [
{
......@@ -492,22 +492,24 @@
"output_type": "stream",
"text": [
"Maximum oscillation amplitude in CO2 anomalies: 4.419807692307586 ppm\n",
"Minimum oscillation amplitude in CO2 anomalies: -4.191923076923047 ppm\n"
"Minimum oscillation amplitude in CO2 anomalies: -4.191923076923047 ppm\n",
"From the graph it is observed that maximum oscillation values around 3 ppm are frequent and the same is true for minimum oscillation values around -3 ppm\n"
]
}
],
"source": [
"# Calculez la valeur maximale et minimale de la colonne 'Oscillation'\n",
"# Oscillation périodique. Calculez la valeur maximale et minimale de la colonne 'Oscillation'\n",
"maximum_value = data['Oscilation'].max()\n",
"minimum_value = data['Oscilation'].min()\n",
"\n",
"print(\"Maximum oscillation amplitude in CO2 anomalies:\", maximum_value, \"ppm\")\n",
"print(\"Minimum oscillation amplitude in CO2 anomalies:\", minimum_value, \"ppm\")"
"print(\"Minimum oscillation amplitude in CO2 anomalies:\", minimum_value, \"ppm\")\n",
"print(\"From the graph it is observed that maximum oscillation values around 3 ppm are frequent and the same is true for minimum oscillation values around -3 ppm\")"
]
},
{
"cell_type": "code",
"execution_count": 40,
"execution_count": 49,
"metadata": {},
"outputs": [
{
......@@ -519,7 +521,7 @@
}
],
"source": [
"# Trouver les indices où la concentration est égale à zéro\n",
"# Oscillation périodique. Trouver les indices où la concentration est égale à zéro\n",
"zero_indices = data.index[data['Oscilation'] == 0].tolist()\n",
"\n",
"# Calculer les temps entre deux passages à zéro consécutifs\n",
......@@ -537,7 +539,7 @@
},
{
"cell_type": "code",
"execution_count": 41,
"execution_count": 50,
"metadata": {},
"outputs": [
{
......@@ -549,7 +551,7 @@
}
],
"source": [
"# Identifier les passages à zéro\n",
"# Oscillation périodique. Identifier les passages à zéro\n",
"crosses_by_zero = (data['Oscilation'] * data['Oscilation'].shift(1) < 0) & (data['Oscilation'] != 0) # Série booléenne qui contient True dans les lignes où un passage à zéro se produit dans la colonne « Oscilation » du DataFrame et False dans les autres lignes. Cette série est ensuite utilisée pour filtrer le DataFrame et obtenir les lignes qui correspondent aux passages par zéro\n",
"\n",
"# Filtrer les lignes contenant des passages à zéro\n",
......@@ -577,7 +579,7 @@
},
{
"cell_type": "code",
"execution_count": 19,
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
......@@ -590,7 +592,7 @@
},
{
"cell_type": "code",
"execution_count": 20,
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
......@@ -605,7 +607,7 @@
},
{
"cell_type": "code",
"execution_count": 21,
"execution_count": 29,
"metadata": {},
"outputs": [
{
......@@ -635,7 +637,7 @@
},
{
"cell_type": "code",
"execution_count": 22,
"execution_count": 30,
"metadata": {},
"outputs": [
{
......@@ -665,7 +667,7 @@
},
{
"cell_type": "code",
"execution_count": 23,
"execution_count": 31,
"metadata": {},
"outputs": [],
"source": [
......@@ -687,7 +689,7 @@
},
{
"cell_type": "code",
"execution_count": 24,
"execution_count": 32,
"metadata": {},
"outputs": [
{
......@@ -717,7 +719,7 @@
},
{
"cell_type": "code",
"execution_count": 25,
"execution_count": 33,
"metadata": {},
"outputs": [
{
......@@ -747,7 +749,7 @@
},
{
"cell_type": "code",
"execution_count": 26,
"execution_count": 34,
"metadata": {},
"outputs": [
{
......@@ -776,7 +778,7 @@
},
{
"cell_type": "code",
"execution_count": 27,
"execution_count": 35,
"metadata": {},
"outputs": [
{
......@@ -805,7 +807,7 @@
},
{
"cell_type": "code",
"execution_count": 28,
"execution_count": 36,
"metadata": {},
"outputs": [
{
......@@ -834,7 +836,7 @@
},
{
"cell_type": "code",
"execution_count": 29,
"execution_count": 37,
"metadata": {},
"outputs": [
{
......@@ -875,6 +877,20 @@
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment