Heim  >  Artikel  >  Backend-Entwicklung  >  Die umfassendste Zusammenfassung der Verwendung von Python-Pandas

Die umfassendste Zusammenfassung der Verwendung von Python-Pandas

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼nach vorne
2019-08-03 17:57:4315437Durchsuche

Die umfassendste Zusammenfassung der Verwendung von Python-Pandas

1. Generieren Sie eine Datentabelle

Im Allgemeinen wird die Numpy-Bibliothek verwendet , also importieren wir zuerst das Backup:

import numpy as np
import pandas as pd

2. CSV- oder XLSX-Datei importieren:

df = pd.DataFrame(pd.read_csv('name.csv',header=1))
df = pd.DataFrame(pd.read_excel('name.xlsx'))

3. Verwenden Sie Pandas, um eine Datentabelle zu erstellen:

df = pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006], 
 "date":pd.date_range('20130102', periods=6),
 "city":['Beijing ', 'SH', ' guangzhou ', 'Shenzhen', 'shanghai', 'BEIJING '],
 "age":[23,44,54,32,34,32],
 "category":['100-A','100-B','110-A','110-C','210-A','130-F'],
 "price":[1200,np.nan,2133,5433,np.nan,4432]},
columns =['id','date','city','category','age','price'])

2. Datentabellen-Informationsansicht

1. Dimensionsansicht:

df.shape

2. Grundlegende Informationen der Datentabelle (Dimension, Spaltenname, Datenformat, belegter Platz usw.):

df.info()

3. Das Format jeder Datenspalte:

df.dtypes

4. Das Format einer bestimmten Spalte:

df['B'].dtype

5. Nullwert:

df.isnull()

6. Zeigen Sie den Nullwert einer bestimmten Spalte an:

df.isnull()

7. Zeigen Sie den eindeutigen Wert einer Spalte an:

df['B'].unique()

8. Zeigen Sie den Wert der Datentabelle an:

df.values

9. Sehen Sie sich den Spaltennamen an:

df.columns

10, sehen Sie sich die ersten 10 Datenzeilen und die letzten 10 Datenzeilen an:

df.head() #默认前10行数据
df.tail()    #默认后10 行数据

Verwandte Empfehlungen: „

Python Video-Tutorial"

3. Bereinigen der Datentabelle

1. Leere Werte mit der Zahl 0 füllen:

df.fillna(value=0)

2. Füllen NA mit dem Mittelwert der Spalte Prince:

df['prince'].fillna(df['prince'].mean())

3. Löschen Sie die Zeichenräume im Ortsfeld:

df['city']=df['city'].map(str.strip)

5. Ändern Sie das Datenformat :

df['city']=df['city'].str.lower()

6. Spaltennamen ändern:

df['price'].astype('int')

7. Nach dem Löschen angezeigte doppelte Werte:

df.rename(columns={'category': 'category-size'})

8. Löschen Sie den zuerst angezeigten doppelten Wert:

df['city'].drop_duplicates()

9. Datenersetzung:

df['city'].drop_duplicates(keep='last')

4. Datenvorverarbeitung

df['city'].replace('sh', 'shanghai')
1. Datentabellen zusammenführen
df1=pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006,1007,1008], 
"gender":['male','female','male','female','male','female','male','female'],
"pay":['Y','N','Y','Y','N','Y','N','Y',],
"m-point":[10,12,20,40,40,40,30,20]})

2 Indexspalten

df_inner=pd.merge(df,df1,how='inner')  # 匹配合并,交集
df_left=pd.merge(df,df1,how='left')        #
df_right=pd.merge(df,df1,how='right')
df_outer=pd.merge(df,df1,how='outer')  #并集

3. Nach dem Wert einer bestimmten Spalte sortieren:

df_inner.set_index('id')

4. Nach Indexspalte sortieren:

df_inner.sort_values(by=['age'])

5 ist >3000, die Gruppenspalte wird hoch angezeigt, andernfalls wird sie niedrig angezeigt:

df_inner.sort_index()

6. Gruppendaten, die mehrere Bedingungen kombinieren. Markieren Sie

df_inner['group'] = np.where(df_inner['price'] > 3000,'high','low')

7 Spalten und erstellen Sie eine Datentabelle. Die Spaltennamen sind Kategorie und Größe

rrree

Es wird die geteilte Datentabelle mit der ursprünglichen df_inner-Datentabelle vervollständigt 🎜>
df_inner.loc[(df_inner['city'] == 'beijing') & (df_inner['price'] >= 4000), 'sign']=1

5. Datenextraktion

Die drei wichtigsten verwendeten Funktionen: loc, iloc und ix, loc Die Funktion extrahiert nach Etikettenwert, iloc extrahiert nach Position und ix kann Nach Etikett extrahieren und gleichzeitig positionieren. 1. Extrahieren Sie den Wert einer einzelnen Zeile nach Index

pd.DataFrame((x.split('-') for x in df_inner['category']),index=df_inner.index,columns=['category','size']))

2. Extrahieren Sie den Wert einer Regionszeile nach Index

df_inner=pd.merge(df_inner,split,right_index=True, left_index=True)

3. Setzen Sie den Index zurück

df_inner.loc[3]

4. Legen Sie das Datum als Index fest

df_inner.iloc[0:5]

5. Extrahieren Sie alle Daten vor 4 Tagen

df_inner.reset_index()

6. Verwenden Sie iloc, um Daten nach Standortbereich zu extrahieren

df_inner=df_inner.set_index('date')

7. Passen Sie iloc individuell nach Standort an. Archivieren Sie die Daten.

df_inner[:'2013-01-04']

8. Verwenden Sie ix, um Daten nach Indexbezeichnung und Positionsmischung zu extrahieren

df_inner.iloc[:3,:2] #冒号前后的数字不再是索引的标签名称,而是数据所在的位置,从0开始,前三行,前两列。

9. Bestimmen Sie, ob der Wert der Stadtspalte Peking ist

df_inner.iloc[[0,2,5],[4,5]] #提取第0、2、5行,4、5列

10. Stellen Sie fest, dass die Stadtspalte Peking und Shanghai enthält, und extrahieren Sie dann die Daten, die die Bedingungen

df_inner.ix[:'2013-01-03',:4] #2013-01-03号之前,前四列数据

erfüllen. 11. Extrahieren Sie die ersten drei Zeichen und generieren Sie eine Datentabelle

df_inner['city'].isin(['beijing'])

6. Datenfilterung

Verwenden Sie die drei Bedingungen AND, OR und NOT mit größer als, kleiner als und gleich, um die Daten zu filtern und Zählen und Summieren durchzuführen.

1. Verwenden Sie „AND“, um

df_inner.loc[df_inner['city'].isin(['beijing','shanghai'])]

zu filtern. Verwenden Sie „OR“, um

pd.DataFrame(category.str[:3])
4. Zählen Sie die gefilterten Daten nach Stadtspalte

df_inner.loc[(df_inner['age'] > 25) & (df_inner['city'] == 'beijing'), ['id','city','age','category','gender']]

5. Verwenden Sie die Abfragefunktion, um zu filtern

df_inner.loc[(df_inner['age'] > 25) | (df_inner['city'] == 'beijing'), ['id','city','age','category','gender']]
.sort(['age'])

6. Summieren Sie die gefilterten Ergebnisse nach Prinz

7. Datenzusammenfassung

Die Hauptfunktionen sind „groupby“ und „pivot_table“

1. Alle Spalten zählen und zusammenfassen

df_inner.loc[(df_inner['city'] != 'beijing'), ['id','city','age','category','gender']].sort(['id'])

Zählen Sie das ID-Feld nach Stadt

df_inner.loc[(df_inner['city'] != 'beijing'), ['id','city','age','category','gender']].sort(['id']).city.count()
3. Fassen Sie die beiden Felder zusammen
df_inner.query('city == ["beijing", "shanghai"]')

4

Datenstichprobe, Berechnung von Standardabweichung, Kovarianz und Korrelationskoeffizient

1. Einfache Datenstichprobe

df_inner.query('city == ["beijing", "shanghai"]').price.sum()

2. Stellen Sie das Stichprobengewicht manuell ein

df_inner.groupby('city').count()

3. Kein Ersatz nach der Probenahme

df_inner.groupby('city')['id'].count()

4. Ersatz nach der Probenahme

df_inner.groupby(['city','size'])['id'].count()
5. Beschreibende Statistik der Datentabelle
df_inner.groupby('city')['price'].agg([len,np.sum, np.mean])

6. Berechnen Sie die Standardabweichung der Spalte

df_inner.sample(n=3)

7. Berechnen Sie die Kovarianz zwischen zwei Feldern

weights = [0, 0, 0, 0, 0.5, 0.5]
df_inner.sample(n=2, weights=weights)

8. Die Kovarianz zwischen allen Feldern in der Datentabelle

df_inner.sample(n=6, replace=False)

9 🎜>10. Korrelationsanalyse der Datentabelle

df_inner.sample(n=6, replace=True)

9. Datenausgabe

Die analysierten Daten können im XLSX-Format und im CSV-Format ausgegeben werden

1. Schreiben Sie in Excel

df_inner.describe().round(2).T #round函数设置显示小数位,T表示转置

2. Schreiben Sie in CSV

df_inner['price'].std()

Das obige ist der detaillierte Inhalt vonDie umfassendste Zusammenfassung der Verwendung von Python-Pandas. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen