0%
Data Science avec Python

Data Science avec Python

Un guide complet pour utiliser Python dans vos projets de data science.

I

InSkillCoach

· min

Data Science avec Python

Python s’est imposé comme le langage de référence pour la data science grâce à son écosystème riche de bibliothèques spécialisées. Cet article vous présente les outils essentiels pour débuter en data science avec Python.

L’écosystème data science de Python

Python offre un ensemble complet d’outils pour chaque étape du processus de data science :

  • Manipulation de données : Pandas, NumPy
  • Visualisation : Matplotlib, Seaborn, Plotly
  • Machine Learning : Scikit-learn, TensorFlow, PyTorch
  • Analyse statistique : SciPy, StatsModels
  • Traitement du langage naturel : NLTK, spaCy
  • Environnements de développement : Jupyter Notebook, Google Colab

Installation des bibliothèques essentielles

Commencez par installer les bibliothèques fondamentales :

pip install numpy pandas matplotlib seaborn scikit-learn jupyter

Manipulation de données avec Pandas

Pandas est la bibliothèque incontournable pour la manipulation de données en Python :

import pandas as pd
import numpy as np

# Créer un DataFrame
data = {
    'Nom': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [25, 30, 35, 40],
    'Ville': ['Paris', 'Lyon', 'Marseille', 'Bordeaux'],
    'Salaire': [45000, 55000, 60000, 70000]
}

df = pd.DataFrame(data)
print(df.head())

# Filtrer les données
jeunes = df[df['Age'] < 35]
print(jeunes)

# Statistiques descriptives
print(df.describe())

# Grouper et agréger
par_ville = df.groupby('Ville').agg({
    'Salaire': ['mean', 'min', 'max'],
    'Age': 'mean'
})
print(par_ville)

Visualisation de données

La visualisation est essentielle pour comprendre vos données :

import matplotlib.pyplot as plt
import seaborn as sns

# Style de visualisation
sns.set(style="whitegrid")

# Distribution des âges
plt.figure(figsize=(10, 6))
sns.histplot(df['Age'], bins=10, kde=True)
plt.title('Distribution des âges')
plt.xlabel('Âge')
plt.ylabel('Fréquence')
plt.show()

# Relation entre âge et salaire
plt.figure(figsize=(10, 6))
sns.scatterplot(x='Age', y='Salaire', data=df)
plt.title('Relation entre âge et salaire')
plt.show()

# Salaire moyen par ville
plt.figure(figsize=(10, 6))
sns.barplot(x='Ville', y='Salaire', data=df)
plt.title('Salaire moyen par ville')
plt.show()

Machine Learning avec Scikit-learn

Scikit-learn simplifie l’implémentation d’algorithmes de machine learning :

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score

# Préparation des données
X = df[['Age']]  # Variable indépendante
y = df['Salaire']  # Variable dépendante

# Division en ensembles d'entraînement et de test
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Création et entraînement du modèle
model = LinearRegression()
model.fit(X_train, y_train)

# Prédictions
y_pred = model.predict(X_test)

# Évaluation du modèle
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)

print(f"Coefficient: {model.coef_[0]:.2f}")
print(f"Intercept: {model.intercept_:.2f}")
print(f"Erreur quadratique moyenne: {mse:.2f}")
print(f"Coefficient de détermination (R²): {r2:.2f}")

# Visualisation des prédictions
plt.figure(figsize=(10, 6))
plt.scatter(X_test, y_test, color='blue', label='Données réelles')
plt.plot(X_test, y_pred, color='red', linewidth=2, label='Prédictions')
plt.title('Régression linéaire: Âge vs Salaire')
plt.xlabel('Âge')
plt.ylabel('Salaire')
plt.legend()
plt.show()

Analyse exploratoire des données (EDA)

L’EDA est une étape cruciale pour comprendre vos données avant de construire des modèles :

# Matrice de corrélation
plt.figure(figsize=(10, 8))
correlation = df.corr()
sns.heatmap(correlation, annot=True, cmap='coolwarm', linewidths=0.5)
plt.title('Matrice de corrélation')
plt.show()

# Pairplot pour visualiser les relations entre variables
sns.pairplot(df)
plt.suptitle('Relations entre les variables numériques', y=1.02)
plt.show()

# Boxplot pour détecter les valeurs aberrantes
plt.figure(figsize=(10, 6))
sns.boxplot(x='Ville', y='Salaire', data=df)
plt.title('Distribution des salaires par ville')
plt.show()

Jupyter Notebook : l’environnement idéal

Jupyter Notebook est l’environnement privilégié des data scientists :

# Lancer Jupyter Notebook
jupyter notebook

Avantages de Jupyter :

  • Combinaison de code, visualisations et texte explicatif
  • Exécution par cellules pour un développement itératif
  • Partage facile des analyses
  • Support de formats riches (Markdown, LaTeX, HTML)

Conclusion

Python offre un écosystème complet et mature pour la data science. En maîtrisant ces outils fondamentaux, vous pourrez :

  • Importer et nettoyer efficacement vos données
  • Créer des visualisations informatives
  • Construire et évaluer des modèles de machine learning
  • Communiquer vos résultats de manière claire et convaincante

La data science avec Python est un domaine vaste et en constante évolution. Continuez à explorer et à apprendre pour rester à jour avec les dernières avancées et techniques.

InSkillCoach

À propos de InSkillCoach

Expert en formation et technologies

Coach spécialisé dans les technologies avancées et l'IA, porté par GNeurone Inc.

Certifications:

  • AWS Certified Solutions Architect – Professional
  • Certifications Google Cloud
  • Microsoft Certified: DevOps Engineer Expert
  • Certified Kubernetes Administrator (CKA)
  • CompTIA Security+
904
78

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !