Aide-mémoire Pandas

Patricia Arquette
Patricia Arquetteoriginal
2024-10-04 06:13:02388parcourir

Pandas Cheat Sheet

Guide complet des pandas : l'aide-mémoire ultime

Pandas est une bibliothèque open source de manipulation et d'analyse de données construite sur Python. Il fournit des structures de données faciles à utiliser telles que DataFrame et Series qui facilitent la gestion des données pour toutes sortes de tâches d'analyse de données. Il est largement utilisé pour la gestion des données structurées, le nettoyage et la préparation des données, ce qui constitue une étape cruciale dans les flux de travail de science des données. Qu'il s'agisse de données de séries chronologiques, de données hétérogènes ou de données au format CSV, Excel, bases de données SQL ou JSON, Pandas propose des outils puissants pour faciliter grandement l'utilisation de ces données.


1. Importer des Pandas

Avant d'utiliser une fonctionnalité Pandas, vous devez importer la bibliothèque. Il est généralement importé au format pd pour garder la syntaxe concise.


import pandas as pd



2. Structures de données Pandas

Série

Une série est un tableau étiqueté unidimensionnel, capable de contenir n'importe quel type de données (entier, chaîne, flottant, etc.). Il peut être créé à partir d'une liste, d'un tableau NumPy ou d'un dictionnaire.


# Create a Pandas Series from a list
s = pd.Series([1, 2, 3, 4])


Résultat attendu :


0    1
1    2
2    3
3    4
dtype: int64


DataFrame

Un DataFrame est une structure de données étiquetée en deux dimensions, similaire à un tableau dans une base de données ou une feuille de calcul Excel. Il se compose de lignes et de colonnes. Chaque colonne peut avoir un type de données différent.


# Create a DataFrame from a dictionary
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [24, 27, 22], 'City': ['New York', 'London', 'Berlin']}
df = pd.DataFrame(data)


Résultat attendu :


      Name  Age      City
0    Alice   24  New York
1      Bob   27    London
2  Charlie   22    Berlin



3. Création de DataFrames et de séries

À partir d'un dictionnaire


data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)


À partir d'une liste de listes


data = [[1, 2, 3], [4, 5, 6]]
df = pd.DataFrame(data, columns=["A", "B", "C"])


Résultat attendu :


   A  B  C
0  1  2  3
1  4  5  6



4. Inspection des DataFrames

Pandas propose plusieurs méthodes pour inspecter et obtenir des informations sur vos données.

  • df.head(n) – Renvoie les n premières lignes.
  • df.tail(n) – Renvoie les n dernières lignes.
  • df.info() – Fournit des informations récapitulatives sur le DataFrame.
  • df.describe() – Génère des statistiques descriptives du DataFrame.

# Inspecting the DataFrame
print(df.head())
print(df.tail())
print(df.info())
print(df.describe())


Résultat attendu :


   A  B  C
0  1  2  3
1  4  5  6

   A  B  C
0  1  2  3
1  4  5  6

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2 entries, 0 to 1
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       2 non-null      int64
 1   B       2 non-null      int64
 2   C       2 non-null      int64
dtypes: int64(3)
memory usage: 128.0 bytes

       A    B    C
count  2.0  2.0  2.0
mean   2.5  3.5  4.5
std    2.1  2.1  2.1
min    1.0  2.0  3.0
25%    1.5  2.5  3.5
50%    2.0  3.0  4.0
75%    2.5  3.5  4.5
max    4.0  5.0  6.0



5. Données d'indexation, de découpage et de sous-ensemble

Accès aux colonnes

Vous pouvez accéder aux colonnes soit en utilisant la notation par points, soit en indexant avec des crochets.


# Dot notation
print(df.A)

# Bracket notation
print(df["B"])


Accès aux lignes par index

Vous pouvez utiliser .iloc[] pour une indexation basée sur un emplacement entier et .loc[] pour une indexation basée sur des étiquettes.


# Using iloc (index-based)
print(df.iloc[0])  # Access first row

# Using loc (label-based)
print(df.loc[0])  # Access first row using label


Découpage des données

Vous pouvez découper des DataFrames pour obtenir des sous-ensembles de données. Vous pouvez découper des lignes ou des colonnes.


# Select specific rows and columns
subset = df.loc[0:1, ["A", "C"]]


Résultat attendu :


   A  C
0  1  3
1  4  6



6. Modification des DataFrames

Ajout de colonnes

Vous pouvez ajouter des colonnes directement au DataFrame en attribuant des valeurs.


df['D'] = [7, 8]  # Adding a new column


Modification des valeurs des colonnes

Vous pouvez modifier les valeurs d'une colonne en y accédant et en attribuant de nouvelles valeurs.


df['A'] = df['A'] * 2  # Modify the 'A' column


Suppression de colonnes ou de lignes

Vous pouvez supprimer des lignes ou des colonnes à l'aide de la fonction drop().


df = df.drop(columns=['D'])  # Dropping a column
df = df.drop(index=1)  # Dropping a row by index



7. Gestion des données manquantes

La gestion des données manquantes est une tâche critique. Pandas fournit plusieurs fonctions pour gérer les données manquantes.

  • df.isnull() – Détecte les valeurs manquantes (renvoie un DataFrame de booléens).
  • df.notnull() – Détecte les valeurs non manquantes (renvoie un DataFrame de booléens).
  • df.fillna(value) – Remplit les valeurs manquantes avec une valeur spécifiée.
  • df.dropna() – Supprime les lignes avec des valeurs manquantes.

df = df.fillna(0)  # Fill missing data with 0
df = df.dropna()  # Drop rows with any missing values



8. Agrégation et regroupement de données

GroupBy

La fonction groupby() est utilisée pour diviser les données en groupes, appliquer une fonction, puis combiner les résultats.


# Grouping by a column and calculating the sum
grouped = df.groupby('City').sum()


Fonctions d'agrégation

Vous pouvez appliquer diverses fonctions d'agrégation comme sum(), Mean(), min(), max(), etc.


# Aggregating data using mean
df.groupby('City').mean()



9. Tri et classement

Tri des données

Vous pouvez trier un DataFrame par une ou plusieurs colonnes à l'aide de la fonction sort_values().


# Sorting by a column in ascending order
df_sorted = df.sort_values(by='Age')

# Sorting by multiple columns
df_sorted = df.sort_values(by=['Age', 'Name'], ascending=[True, False])


Classement

Vous pouvez classer les valeurs dans un DataFrame en utilisant Rank().


df['Rank'] = df['Age'].rank()



10. Fusionner, joindre et concaténer des DataFrames

Fusion de DataFrames

Vous pouvez fusionner deux DataFrames basés sur une colonne ou un index commun.


df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']})
df2 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'C': ['C0', 'C1', 'C2']})
merged_df = pd.merge(df1, df2, on='A')


Concatenating DataFrames

You can concatenate DataFrames along rows or columns using concat().


df1 = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B'])
df2 = pd.DataFrame([[5, 6], [7, 8]], columns=['A', 'B'])
concat_df = pd.concat([df1, df2], axis=0)



Conclusion

Pandas is a versatile tool for data manipulation, from importing and cleaning data to performing complex operations. This cheat sheet provides a quick overview of some of the most common Pandas features, helping you make your data analysis workflow more efficient.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn