English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Pandas 基本方法实例
到目前为止,我们了解了三个Pandas DataStructures以及如何创建它们。由于它在实时数据处理中的重要性,因此我们将主要关注DataFrame对象,并讨论其他一些DataStructures。
方法 | 描述 |
axes | 返回行轴标签的列表 |
dtype | 返回对象的dtype。 |
empty | 如果Series为空,则返回True。 |
ndim | 根据定义返回基础数据的维数。 |
size | 返回基础数据中的元素数。 |
values | 将Series返回为ndarray。 |
head() | 返回前n行。 |
tail() | 返回最后n行。 |
import pandas as pd import numpy as np # 用10使用0随机数创建一个Series s = pd.Series(np.random.randn(4)) print(s)
Laufender Output:
0 0.967853 1 -0.148368 2 -1.395906 3 -1.758394 dtype: float64
返回Series标签的列表
import pandas as pd import numpy as np # 用10使用0随机数创建一个Series s = pd.Series(np.random.randn(4)) print ("轴是:") print(s.axes)
Laufender Output:
轴是: [RangeIndex(start=0, stop=4, step=1])
以上结果是0到5(即[0,1,2,3,4])。
返回布尔值,说明对象是否为空。True表示对象为空
import pandas as pd import numpy as np # 用10使用0随机数创建一个Series s = pd.Series(np.random.randn(4)) print ("对象是否为空?") print(s.empty)
Laufender Output:
对象是否为空? False
返回对象的维数。根据定义,Series 是一个1D 数据结构,因此它返回
import pandas as pd import numpy as np # 用4个随机数创建一个Series s = pd.Series(np.random.randn(4)) print s print ("对象的维度:") print(s.ndim)
Laufender Output:
0 0.175898 1 0.166197 2 -0.609712 3 -1.377000 dtype: float64 对象的维度: 1
返回Series的大小(长度)。
import pandas as pd import numpy as np # 用4个随机数创建一个Series s = pd.Series(np.random.randn(2)) print s print ("对象的大小:") print(s.size)
Laufender Output:
0 3.078058 1 -1.207803 dtype: float64 对象的大小: 2
以数组形式返回Series数据
import pandas as pd import numpy as np # 用4个随机数创建一个Series s = pd.Series(np.random.randn(4)) print s print ("实际数据系列是:") print(s.values)
Laufender Output:
0 1.787373 1 -0.605159 2 0.180477 3 -0.140922 dtype: float64 实际数据系列是: [ 1.78737302 -0.60515881 0.18047664 -0.1409218 ]
要查看Series或DataFrame对象的头尾数据,请使用head() 和tail() 方法。
head() 返回前n行(观察索引值)。默认显示的元素数是5,aber Sie können auch benutzerdefinierte Zahlen übergeben.
import pandas as pd import numpy as np # 用4个随机数创建一个Series s = pd.Series(np.random.randn(4)) print ("最初的系列是:") print s print ("前两行数据系列:") print(s.head(2))
Laufender Output:
最初的系列是: 0 0.720876 1 -0.765898 2 0.479221 3 -0.139547 dtype: float64 前两行数据系列: 0 0.720876 1 -0.765898 dtype: float64
tail() Letzte n Zeilen zurückgeben (beobachten Sie den Index-Wert). Standardmäßig angezeigte Elementanzahl ist5,aber Sie können auch benutzerdefinierte Zahlen übergeben.
import pandas as pd import numpy as np # 用4个随机数创建一个Series s = pd.Series(np.random.randn(4)) print('最初的系列是:') print(s) print('数据序列的最后两行:') print(s.tail(2)
Laufender Output:
最初的系列是: 0 -0.655091 1 -0.881407 2 -0.608592 3 -2.341413 dtype: float64 数据序列的最后两行: 2 -0.608592 3 -2.341413 dtype: float64
现在让我们了解什么是DataFrame基本功能。下表列出了有助于DataFrame基本功能的重要属性或方法。
属性/方法 | 描述 |
T | 行和列互相转换 |
axes | 返回以行轴标签和列轴标签为唯一成员的列表。 |
dtypes | 返回此对象中的dtypes。 |
empty | 如果NDFrame完全为空[没有项目],则为true;否则为false。如果任何轴的长度为0。 |
ndim | 轴数/数组尺寸。 |
shape | 返回表示DataFrame维度的元组。 |
size | NDFrame中的元素数。 |
values | NDFrame的数字表示。 |
head() | 返回前n行。 |
tail() | 返回最后n行。 |
下面我们创建一个DataFrame并查看上述属性的所有操作方式。
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print ('Our data series is:') print(df)
Laufender Output:
Our data series is: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80
返回DataFrame的转置。行和列将互换。
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print ('数据序列的转置是:') print(df.T)
Laufender Output:
数据序列的转置是: 0 1 2 3 4 5 6 Age 25 26 25 23 30 29 23 Name Tom James Ricky Vin Steve Smith Jack Rating 4.23 3.24 3.98 2.56 3.2 4.6 3.8
返回行轴标签和列轴标签的列表。
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print ('行轴标签和列轴标签是:') print(df.axes)
Laufender Output:
行轴标签和列轴标签是: [RangeIndex(start=0, stop=7, step=1), Index(['Age', 'Name', 'Rating'], dtype='object')]
返回每一列的数据类型。
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print ('每列的数据类型如下:') print(df.dtypes)
Laufender Output:
每列的数据类型如下: Age int64 Name object Rating float64 dtype: object
Gibt einen booleschen Wert zurück, der angibt, ob das Objekt leer ist; True bedeutet, dass das Objekt leer ist.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Ist das Objekt leer?") print(df.empty)
Laufender Output:
Ist das Objekt leer? False
Gibt die Anzahl der Objekte zurück. Laut Definition ist DataFrame ein2D-Objekt.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Unser Objekt ist:") print df print("Die Dimension des Objekts ist:") print(df.ndim)
Laufender Output:
Unser Objekt ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die Dimension des Objekts ist: 2
Gibt ein Tupel zurück, das die Dimensionen des DataFrame darstellt. Das Tupel (a,b), wobei a die Anzahl der Zeilen und b die Anzahl der Spalten darstellt.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Unser Objekt ist:") print df print("Die Form des Objekts ist:") print(df.shape)
Laufender Output:
Unser Objekt ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die Form des Objekts ist: (7, 3)
Gibt die Anzahl der Elemente im DataFrame zurück.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Unser Objekt ist:") print df print("Die Gesamtzahl der Elemente in unserem Objekt beträgt:") print(df.size)
Laufender Output:
Unser Objekt ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die Gesamtzahl der Elemente in unserem Objekt beträgt: 21
Gibt die tatsächlichen Daten im DataFrame in Form von NDarray zurück.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Unser Objekt ist:") print df print("Die tatsächlichen Daten in unserem Datenrahmen sind:") print(df.values)
Laufender Output:
Unser Objekt ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die tatsächlichen Daten in unserem Datenrahmen sind: [[25 "Tom" 4.23] [26 "James" 3.24] [25 "Ricky" 3.98] [23 "Vin" 2.56] [30 "Steve" 3.2] [29 "Smith" 4.6] [23 "Jack" 3.8]]
Um die Kopf- und Fußdaten des DataFrame-Objekts anzuzeigen, verwenden Sie die Methoden head() und tail(). head() gibt die ersten n Zeilen zurück (beachten Sie die Indexwerte). Die Standardanzahl der angezeigten Elemente beträgt5,aber Sie können auch benutzerdefinierte Zahlen übergeben.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print("Unser Datenrahmen ist:") print df print("Die ersten zwei Zeilen des Datenrahmens lauten:") print(df.head(2))
Laufender Output:
Unser Datenrahmen ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die ersten zwei Zeilen des Datenrahmens sind: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24
tail() Letzte n Zeilen zurückgeben (beobachten Sie den Index-Wert). Standardmäßig angezeigte Elementanzahl ist5,aber Sie können auch benutzerdefinierte Zahlen übergeben.
import pandas as pd import numpy as np # Erstellen eines Series-Wörterbuchs d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']), 'Alter':pd.Series([25,26,25,23,30,29,23]), 'Bewertung':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])} # Erstellen eines DataFrame df = pd.DataFrame(d) print ("Unser Datenrahmen ist:") print df print ("Die letzten zwei Zeilen des Datenrahmens sind:") print(df.head(2))
Laufender Output:
Unser Datenrahmen ist: Alter Name Bewertung 0 25 Tom 4.23 1 26 James 3.24 2 25 Ricky 3.98 3 23 Vin 2.56 4 30 Steve 3.20 5 29 Smith 4.60 6 23 Jack 3.80 Die letzten zwei Zeilen des Datenrahmens sind: Alter Name Bewertung 5 29 Smith 4.6 6 23 Jack 3.8