import pandas as pd
# Afficher les 5 premières lignes
print(df.head(5))
# Afficher les 5 dernières lignes
print(df.tail(5))
DataFrame
# Trame de données vide
df = pd.DataFrame(index=[], columns=[])
df = pd.DataFrame(index=[], columns=range(15))
df = pd.DataFrame (0, index = plage (4), colonnes = plage (15)) Remplir avec # 0
# Créer un bloc de données vide à partir d'un bloc de données existant
df_blank = df.iloc[0:0]
# Remplacez les noms de colonnes par des numéros de série (car il est facile de traiter avec pour)
df.columns=list(range(len(df.columns)))
# Remplacez les noms de colonnes par des alphabets (car il est facile de faire correspondre avec Excel)
df.columns=([chr(ord('A') + i) for i in range(26)]+["AA"]+["AB"])
# Réaffecter l'index à partir de 0
df=df.reset_index()
# Réaffecter l'index à partir de 1 (car il est facile de faire correspondre avec Excel)
df.index = df.index + 1
# Attribuer des numéros de série à des lignes autres que l'index
serial_num = pd.RangeIndex(start=0, stop=len(df.index) , step=1)
df['No'] = serial_num
df['A']
df=df[["F","Z"]]
# Afficher uniquement les colonnes arbitraires
df [['nom de la colonne']]
# Lignes 1, 2 et 4
df.iloc[[1,2,4]]
# 0-2ème colonne
df.iloc[[0,2]]
# Si vous ne spécifiez aucune colonne, la colonne sera ajoutée.
df['job'] = ["Engineer"]
df ['new_column'] = 0 # Remplissez la valeur initiale avec 0 et ajoutez
df=df[df['A'] > 450]
df=df[df['A']=='P1']
# Spécifiez plusieurs conditions
[Note] Une erreur se produira sauf si (&, |, ~) est utilisé à la place de (et, ou, pas).
[Note] Lors de l'utilisation de l'opérateur de comparaison, une erreur se produira à moins que les conditions ne soient placées entre parenthèses.
df=df[(df['D']==0.0) | (df['D']==0.1)]
x=0 → y x<>0 →x
dfsum["z"]=dfsum["y"].where(dfsum["x"] ==0, dfsum["x"])
# Substitution
gf2 ["hit rate"] = gf2 ['hits'] / gf2 ['number of hits']
# Convertir y en ventes
df.rename(columns={'y': 'sales'}, inplace=True)
df.columns = ['year_orig', 'pop', 'rate', '%']
df.drop (5) # Supprimer la ligne 5
df.drop ([5,6]) # Supprimer les lignes 5,6
df.drop(['remarks'], axis=1, inplace=True)
# Éliminer le contenu des colonnes en double
df = set (colonne df2.A)
df['A'].apply(lambda x: x * 2) #=A1*2
df ['A']. Apply (lambda x: 1 si x> 0 sinon 0) #IF (A1> 0,1,0)
# Si expand = True, il sera divisé en deux, mais sinon, il sera divisé au format liste.
print(df['a'].str[:2],expand=True)
# Initialement de type objet
df=df.astype(float)
df1["G"]=df1["G"].astype(int)
option | La description |
---|---|
inplace=True | Ce sera un changement destructeur, et les données d'origine changeront également |
[Note] Puisqu'il commence à 0, il devient Excel line-1.
# Extraire des lignes pour une section spécifique
df[1:3]
# Extraire seulement 100 lignes
df.loc[100]
# Extrait de la ligne 100 à la ligne 105
df[100:106]
# Extraire uniquement les 10 premières lignes
df[:10]
Si vous ne spécifiez aucune ligne, la ligne sera ajoutée.
df.loc['ONE'] = 0
# Ajouter de la valeur pour chaque ligne
df.loc['FIVE'] = ['A5', 'B5', 'C5']
# Supprimer les lignes en double
df=df.drop(range(0,3))
df.drop(range(0,3),inplace=True )
df['col1'] = df['col1'].str.replace('x', 'z')
# Connexion verticale
df=pd.concat([df, df1])
# Connexion horizontale
df=pd.concat([df, df1], axis=1)
[Note] Si l'index est différent, il ne sera pas combiné juste à côté, donc si vous voulez le placer juste à côté, réaffectez l'index.
dfsum = pd.merge (dfsum, gf2, on = 'clé', comment = "externe")
gf = df3.groupby ('nom du joueur')
gf1 = gf.agg ({'Base d'origine': max, 'Voler la base': 'max', 'Taux de coup': 'max'})
gf1=gf1.reset_index()
# Substitution
df.loc[99,0] ='▲'
df.loc[:, 2:8] = 0
[Note] SettingWithCopyWarning peut se produire si df.loc [99] [0] est écrit (indexation chaînée). La valeur ne change pas
df.sort_values(['sales', 'temperature'], ascending=False)
sorted(df)
option | La description |
---|---|
ascending=True | Ordre décroissant |
ascending=False | ordre croissant |
# Liste → DataFrame
pd.DataFrame(data=list)
# Partie de données → liste
s = pd.Series([0, 1, 2])
print(s)
0 0
1 1
2 2
dtype: int64
list= s.values.tolist()
# Ne pas afficher les colonnes et les index
print(df.to_string(index=False, header=False))
df = pd.read_excel('sample.xlsx',sheet_name='sheet1')
option | La description |
---|---|
sheet_name="" | Spécifiez le nom de la feuille |
header=None | Si spécifié, lire sans en-tête |
S'il n'est pas spécifié, la première ligne est automatiquement insérée comme nom de colonne. | |
header=2 | Lisez la ligne spécifiée comme un en-tête. Les lignes avant cela sont ignorées. La ligne 0 commence à partir de ce point |
df.to_excel('sample.xlsx',sheet_name='sheet1', encoding='cp932',index=False, header=False)
option | La description |
---|---|
sheet_name="" | Spécifiez le nom de la feuille |
index=False | Supprimer le nom de la ligne et exporter |
header=False | Supprimer les noms de colonnes et exporter |
df=pd.read_csv("sample.csv",encoding="cp932",header=None)
df=pd.read_csv("sample.csv",encoding="shift_jis")
df1=pd.read_csv(sample.csv,encoding='cp932',names=col_names,low_memory=False )
[Note] Si la chaîne de caractères de l'extension Windows est mélangée, il est nécessaire de définir le code de caractère comme cp932. [Note] Lors de la lecture d'un fichier lourd, entrez low_memory = False.
df.to_csv('sample.csv',encoding='cp932')
df=pd.read_csv("sample.DAT",encoding='cp932', sep='\t',names=col_names )
df=pd.read_table("sample.DAT",encoding='cp932',header=None)
df.to_csv("employee.csv", sep=",")
# Remplacez NaN dans la colonne A par «0,0»
df.fillna(value={'A': 0.0}, inplace=True)
# Supprimer la ligne avec NaN dans la colonne A
df.dropna(subset=[A], axis=0, inplace=True)
# Remplacer «-» dans la colonne A par 0
df['A'] = df['A'].replace('--', 0).astype(float)
# Remplissez NaN avec la valeur dans la cellule supérieure
df=df.fillna(method='ffill')
import matplotlib.pyplot as plt
Cela fait du bien de changer le style de l'intrigue en procédant comme suit
plt.style.use('ggplot')
notation | Détails de fonctionnement |
---|---|
plt.title('Titre du graphique') | Définir le titre |
plt.xlabel('Étiquette de l'axe X') | Définissez le nom de l'axe des x |
plt.ylabel('Étiquette de l'axe Y') | Définir le nom de l'axe y |
plt.xlim(Valeur minimale de X,Valeur maximale de X) | Spécifiez la plage de l'axe x |
plt.ylim(Valeur minimale de Y,Valeur maximale de Y) | Spécifiez la plage de l'axe y |
plt.legend() | Afficher la légende |
plt.grid() | Afficher les lignes de la grille |
Recommended Posts