[PYTHON] Un chercheur d'une société pharmaceutique a résumé les pandas

introduction

Pandas est une bibliothèque qui peut facilement gérer des données tabulaires. Ici, je vais me concentrer sur les points que vous devez savoir au moins sur les Pandas. Il est censé utiliser la série Python3.

Charger la bibliothèque

Vous pouvez charger la bibliothèque en utilisant ʻimport`. Par convention, il est souvent abrégé en «pd».

Pandas_1.py


import pandas as pd

Series

La série est une donnée de type liste de type dictionnaire.

Créer une série

Pandas_2.py


import pandas as pd


series_olympic = pd.Series({'Tokyo': 2020, 'Rio de Janeiro': 2016, 'Londres': 2012})
print(series_olympic)

Référence de la série

Pandas_3.py


import pandas as pd


series_olympic = pd.Series({'Tokyo': 2020, 'Rio de Janeiro': 2016, 'Londres': 2012})

print(series_olympic[0:2])
print(series_olympic.index) #Extrayez uniquement l'index.
print(series_olympic.values) #Extrayez uniquement la valeur.

print(series_olympic[series_olympic % 8 == 0]) #Extrayez uniquement les éléments qui remplissent les conditions.

Ajouter / supprimer des éléments

Pandas_4.py


import pandas as pd


series_olympic = pd.Series({'Tokyo': 2020, 'Rio de Janeiro': 2016, 'Londres': 2012})

series_olympic = series_olympic.append(pd.Series({'Pékin': 2008})) #Ajoutez un nouvel élément.
print(series_olympic)

series_olympic = series_olympic.drop('Tokyo') #Supprimez l'élément.
print(series_olympic)

Tri en série

Pandas_5.py


import pandas as pd


series_olympic = pd.Series({'Tokyo': 2020, 'Rio de Janeiro': 2016, 'Londres': 2012})

print(series_olympic.sort_index()) #Trier par ordre croissant d'index.
print(series_olympic.sort_values()) #Trier par ordre croissant de valeur.
print(series_olympic.sort_values(ascending=False)) #Trier par valeur dans l'ordre décroissant.

DataFrame

DataFrame est une donnée tabulaire qui rejoint Series.

Créer un DataFrame

Pandas_6.py


import pandas as pd


series_name = pd.Series(['Ichiro', 'Jiro', 'Saburo'])
series_height = pd.Series([200, 173, 141])
series_weight = pd.Series([100, 72, 40])

df_humans = pd.DataFrame({'name': series_name, 'height': series_height, 'weight': series_weight})
print(df_humans)

df_humans.index = ['Ichiro', 'Jiro', 'Saburo'] #Donnez un nom de ligne.
df_humans.columns = ['Nom', 'la taille', 'poids'] #Donnez un nom de colonne.
print(df_humans)

df_humans_empty = pd.DataFrame(columns=['Nom', 'la taille', 'poids']) #Crée un DataFrame vide avec le nom de colonne spécifié.
print(df_humans_empty)

Référence DataFrame

Pandas_7.py


import pandas as pd


series_name = pd.Series(['Ichiro', 'Jiro', 'Saburo', 'Siro'])
series_height = pd.Series([200, 173, 141, 172])
series_weight = pd.Series([100, 72, 40, 72])
series_gender = pd.Series(['Homme', 'Homme', 'femme', 'Homme'])
series_bmi = pd.Series([25, 24, 20, 24.9])
df_humans = pd.DataFrame({'name': series_name, 'height': series_height, 'weight': series_weight}, 'gender': series_gender, 'bmi': series_bmi)
df_humans.index = ['Ichiro', 'Jiro', 'Saburo', 'Shiro']
df_humans.columns = ['Nom', 'la taille', 'poids', 'sexe', 'BMI']

print(df_humans['Nom']) # 「Nom」の列を取り出す。
print(df_humans.Nom) # これでも「Nom」の列を取り出せる。

print(df_humans.loc['Ichiro', 'poids']) #Extraire en spécifiant le nom de la ligne et le nom de la colonne.
print(df_humans.loc[['Ichiro', 'Jiro'], ['la taille', 'poids', 'BMI']]) #Vous pouvez également spécifier plusieurs lignes et plusieurs colonnes.
print(df_humans.loc['Jiro']) #Extrait toute la ligne spécifiée.
print(df_humans.loc[:, 'BMI']) #Extrait toute la colonne spécifiée.

print(df_humans.iloc[0, 2]) #Extraire en spécifiant le numéro d'index de ligne et le numéro d'index de colonne.
print(df_humans.iloc[[0, 1], [1, 2, 4]]) #Vous pouvez également spécifier plusieurs lignes et plusieurs colonnes.
print(df_humans.iloc[1]) #Extrait toute la ligne spécifiée.
print(df_humans.iloc[:, 4]) #Extrait toute la colonne spécifiée.

print(df_humans[df_humans['BMI'] >= 25]) #Extrayez uniquement les lignes qui remplissent les conditions.
print(df_humans[(df_humans['la taille'] >= 170) & (df_humans['poids'] >= 70)]) #Conditions multiples(and)Mais c'est possible.
print(df_humans[(df_humans['poids'] < 70) | (df_humans['BMI'] < 25)]) #Conditions multiples(or)Mais c'est possible.
print(df_humans[df_humans['BMI'] < 25]['Nom']) #Il est également possible de spécifier des colonnes en filtrant les lignes qui remplissent les conditions.

Tri des DataFrame

Pandas_8.py


import pandas as pd


series_name = pd.Series(['Ichiro', 'Jiro', 'Saburo', 'Siro'])
series_height = pd.Series([200, 173, 141, 172])
series_weight = pd.Series([100, 72, 40, 72])
series_gender = pd.Series(['Homme', 'Homme', 'femme', 'Homme'])
series_bmi = pd.Series([25, 24, 20, 24.9])
df_humans = pd.DataFrame({'name': series_name, 'height': series_height, 'weight': series_weight}, 'gender': series_gender, 'bmi': series_bmi)
df_humans.index = ['Ichiro', 'Jiro', 'Saburo', 'Shiro']
df_humans.columns = ['Nom', 'la taille', 'poids', 'sexe', 'BMI']

df_humans = df_humans.sort_values(by='poids') # poidsで昇順にソートする。
print(df_humans)
df_humans = df_humans.sort_values(by='poids', ascending=False) # poidsで降順にソートする。
print(df_humans)
df_humans = df_humans.sort_values(by=['poids', 'BMI']) # poids、BMIで昇順にソートする。
print(df_humans)

Ajouter / supprimer des lignes ou des colonnes

Pandas_9.py


import pandas as pd


series_name = pd.Series(['Ichiro', 'Jiro', 'Saburo'])
series_height = pd.Series([200, 173, 141])
series_weight = pd.Series([100, 72, 40])

df_humans = pd.DataFrame({'name': series_name, 'height': series_height, 'weight': series_weight})
df_humans.index = ['Ichiro', 'Jiro', 'Saburo']
df_humans.columns = ['Nom', 'la taille', 'poids']

df_humans['sexe'] = ['Homme', 'Homme', 'femme'] #Ajoutez une colonne.
df_humans['BMI'] = df_humans['poids'] / ((df_humans['la taille']  / 100)** 2) #Il est également possible d'ajouter le résultat calculé entre les colonnes.
print(df_humans)

df_humans.loc['Shiro'] = ['Siro', 170, 72, 'Homme', 24.9] #Ajoutez une ligne.
print(df_humans)

df_humans_2 = df_humans.drop('Saburo') #Supprimez la ligne.
print(df_humans_2)
df_humans_3 = df_humans.drop('sexe', axis=1) #Supprimez la colonne.
print(df_humans_3)

Lecture / écriture de fichiers externes

Pandas_10.py


import pandas as pd


df_csv = pd.read_csv('filepath/filename.csv') #Lisez le fichier CSV.
df_text = pd.read_csv('filepath/filename.txt', sep='¥t') #Lisez un fichier texte délimité par des tabulations.
df_excel = pd.read_excel('filepath/filename.xlsx') #Lisez le fichier Excel.

df_csv_2 = pd.read_csv('filepath/filename_2.csv', header=1) #Si la première ligne est vide et que vous souhaitez que la deuxième ligne soit le nom de la colonne.
df_csv_3 = pd.read_csv('filepath/filename_3.csv', header=None) #S'il n'y a pas de nom de colonne.

df_excel_sheet2 = pd.read_excel('filepath/filename.xlsx', sheet_name=1) #Spécifiez le numéro d'index (à partir de 0) de la feuille.
df_excel_sheet2 = pd.read_excel('filepath/filename.xlsx', sheet_name='sheet2') #Spécifiez le nom de la feuille.


df_csv.to_csv('filepath/filename.csv') #Exportez un fichier CSV.
df_text.to_csv('filepath/filename.txt', sep='¥t') #Exportez un fichier texte délimité par des tabulations.
df_excel.to_excel('filepath/filename.xlsx') #Exportez le fichier Excel.

df_csv.to_csv('filepath/filename.csv', index=False) #Si vous n'avez pas besoin du numéro d'index dans la colonne la plus à gauche.

Résumé

Ici, nous avons présenté les bases de Pandas. Une fois que vous pourrez faire tout cela, vous pourrez lire les fichiers externes, les traiter et les écrire.

Documents de référence / liens

Quel est le langage de programmation Python? Peut-il être utilisé pour l'IA et l'apprentissage automatique?

Recommended Posts

Un chercheur d'une société pharmaceutique a résumé les pandas
Les chercheurs des sociétés pharmaceutiques ont résumé scikit-learn
Un chercheur d'une société pharmaceutique a résumé NumPy
Un chercheur d'une société pharmaceutique a résumé Matplotlib
Un chercheur d'une société pharmaceutique a résumé Seaborn
Un chercheur d'une société pharmaceutique a résumé la notation d'inclusion de Python
Un chercheur d'une société pharmaceutique a résumé le test unitaire Python
Des chercheurs de sociétés pharmaceutiques ont résumé les classes en Python
Un chercheur d'une société pharmaceutique a résumé les fonctions de Python
Un chercheur d'une société pharmaceutique a résumé la gestion des exceptions de Python
Un chercheur d'une société pharmaceutique a résumé les normes de codage Python
Des chercheurs de sociétés pharmaceutiques ont résumé les variables en Python
Un chercheur d'une société pharmaceutique a résumé les expressions canoniques en Python
Un chercheur d'une société pharmaceutique a résumé le raclage Web à l'aide de Python
Un chercheur d'une société pharmaceutique a résumé l'analyse de fichiers en Python
Un chercheur d'une société pharmaceutique a résumé les opérations de base de données à l'aide de Python
Un chercheur d'une société pharmaceutique a résumé les opérateurs utilisés en Python
Comment installer Python pour les chercheurs de sociétés pharmaceutiques
Un chercheur d'une société pharmaceutique a résumé les règles de description de base de Python