Maison > développement back-end > Tutoriel Python > Aide-mémoire Pandas

Aide-mémoire Pandas

Patricia Arquette
Libérer: 2024-10-04 06:13:02
original
386 Les gens l'ont consulté

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


Copier après la connexion

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])


Copier après la connexion

Résultat attendu :


0    1
1    2
2    3
3    4
dtype: int64


Copier après la connexion

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)


Copier après la connexion

Résultat attendu :


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


Copier après la connexion

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)


Copier après la connexion

À partir d'une liste de listes


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


Copier après la connexion

Résultat attendu :


   A  B  C
0  1  2  3
1  4  5  6


Copier après la connexion

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())


Copier après la connexion

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


Copier après la connexion

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"])


Copier après la connexion

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


Copier après la connexion

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"]]


Copier après la connexion

Résultat attendu :


   A  C
0  1  3
1  4  6


Copier après la connexion

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


Copier après la connexion

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


Copier après la connexion

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


Copier après la connexion

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


Copier après la connexion

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()


Copier après la connexion

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()


Copier après la connexion

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])


Copier après la connexion

Classement

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


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


Copier après la connexion

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')


Copier après la connexion

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)


Copier après la connexion

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!

source:dev.to
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal