屬性和方法
DataFrame有許多的的屬性和方法使得pabdas用起來非常的快捷簡便。
導入數據:
1 import pandas as pd 2 import numpy as np 3 from pandas import Series,DataFrame 4 test=pd.read_excel("/Users/yaozhilin/Downloads/數據.xls",sep="t") 5 test.head(5)#顯示前五行
•屬性
test.columns 獲取DataFrame的列名
test.index 獲取DataFrame的索引名
test.dtypes 獲取DataFrame的沒列數據的屬性
test.shape 獲取DataFrame的行和列數
test.size 獲取DataFrame的總元素
1 test.columns
Index(['公司名稱', '聯系人姓名', '聯系人頭銜', '地址', '電話', '傳真', '電子郵件', '日期', '附件'], dtype='object')
1 test.index
RangeIndex(start=0, stop=91, step=1)
1 test.dtypes
公司名稱 object 聯系人姓名 object 聯系人頭銜 object 地址 object 電話 object 傳真 object 電子郵件 object 日期 datetime64[ns] 附件 float64 dtype: object
1 test.shape
(91, 9)
1 test.size
819
•方法
方法使用
1、head() 顯示數據前幾行(默認5行)
2、tail() 顯示數據后幾行(默認5行)
3、rename(index/columns={a:a1}) 數據索引或列重命名
4、replace(columns:{a:a1}) 替換數據
5、unique 顯示唯一值
6、sort_index 索引排序
7、sort_values 值排序
8、value_counts 統計每個值的數量
9、describe 統計所有值的數據
10、max/min/sum/mean
11、reindex 創建新索引
下面舉幾個列子
rename/head
1 test.rename(columns={"聯系人姓名":"姓名","聯系人頭銜":"職位"},inplace=True) 2 test.head(5)
replace/tail
1 test.replace({"職位":{"物主":"房東"}}).tail(5)
unique
1 test["職位"].unique()
array(['銷售代表', '物主', '采購員', '市場經理', '結算經理', '銷售代理', '銷售員', '銷售經理', '市場助理', '助理銷售代理', '助理銷售代表', '物主/市場助理'], dtype=object)
1 len(test["職位"].unique())
12
sort_index
1 test.sort_index(ascending=False).head(5)#ascending默認為true
sort_values
1 test.sort_values(by=["姓名","職位"]).head(4)
duplicated()/value_counts
1 test.duplicated().value_counts()#判斷該數據中是否有重復值
False 91 dtype: int64
1 test["職位"].value_counts()
銷售代表 17 物主 17 市場經理 12 銷售經理 11 結算經理 10 銷售員 7 市場助理 6 銷售代理 5 采購員 2 助理銷售代理 2 助理銷售代表 1 物主/市場助理 1 Name: 職位, dtype: int64
describe
1 test["附件"]=range(91) 2 test.describe()
reindex
1 test.reindex(np.arange(2,93)).head(4)