Les outils d'analyse : pandas et scikit-learn
L'outillage d'une analyse en Python : carnet Jupyter, NumPy et pandas pour le tableau, scikit-learn et son contrat fit, transform, predict, score, découpage du jeu, pipeline ; R, Orange et KNIME seulement situés.
- 26 cartes
- 3 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
Quelques cartes du deck
NumPy : de quoi s'agit-il ?
Voir la réponse
Bibliothèque Python de tableaux numériques à plusieurs dimensions, dont les opérations s'appliquent à tous les éléments d'un coup.
Les calculs sont vectorisés et rapides, bien plus qu'une boucle Python. Presque tout l'écosystème, pandas et scikit-learn compris, repose dessus.
Le jeu des iris compte 150 lignes et 4 variables. Que vaut
X_test.shapeaprès ce code ?
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
X, y = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)`(30, 4)(120, 4)(30, 150)(4, 30)
Voir la réponse
(30, 4)test_size=0.2garde 20 % de 150 lignes pour le test, soit 30 ; les 4 variables restent.(120, 4)est la forme deX_train.Un modèle scikit-learn apprend avec …(X, y), prédit avec …(X) et se note avec …(X, y).
Voir la réponse
Un modèle scikit-learn apprend avec fit(X, y), prédit avec predict(X) et se note avec score(X, y).
Ce contrat est commun à tous les estimateurs. Appeler
predictavantfitlèveNotFittedError: le modèle n'a encore rien appris.pandas : de quoi s'agit-il ?
Voir la réponse
Bibliothèque Python de tables étiquetées : lire un CSV, filtrer, regrouper, joindre et nettoyer des données en colonnes nommées.
Son objet central est le
DataFrame. Chaque colonne est uneSeries;df.head()montre cinq lignes,df.describe()résume les colonnes numériques.Pourquoi cette ligne, placée avant le découpage, est-elle une faute ?
```python
X = StandardScaler().fit_transform(X)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)`fit_transformrenvoie un tableau NumPy, quetrain_test_splitne sait pas découper- La moyenne et l'écart-type du jeu de test servent à transformer l'entraînement
StandardScalerne s'applique qu'aux cibles, jamais à la matrice des variables X- Le découpage doit toujours précéder la lecture des données, et non suivre leur transformation
Voir la réponse
La moyenne et l'écart-type du jeu de test servent à transformer l'entraînement
Le scaler a calculé ses paramètres sur toutes les lignes, test compris : le jeu de test n'est plus vierge. Réparation : ajuster le scaler sur
X_trainseul, puistransformsurX_test, ou tout mettre dans unPipeline.