安裝pandas,命令行輸入 pip install pandas
導出pandas以及它主要的兩個數據結構Series和DataFrame
import pandas as pd
from pandas import Series,DataFram
從csv或txt文件中讀取數據到DataFrame
import csv data=pd.read_csv('filename.csv',encoding='gb18030',newline='')默認分隔符為逗號 data=pd.read_table('filename.txt',seq=',')#加載帶分隔符的數據使用seq='分隔符' read_fwf #讀取定寬列格式數據,沒有分隔符 read_clipboard #讀取剪切板中的數據,可以看做read_table的剪切板。在將網頁轉換為表格時有用
選擇:數據訪問(標簽、特定值、布爾索引等)
>>> data key1 key2 c1 9 8 c2 3 4 >>> data['key1'] c1 9 c2 3 >>> data.ix['c1'] key1 9 key2 8 >>> data[data['key1']>8] key1 key2 c1 9 8 >>> data[:1] key1 key2 c1 9 8 >>> data<5 key1 key2 c1 False False c2 True True >>> data<5 key1 key2 c1 False False c2 True True >>> data[data<5]=0 >>> data key1 key2 c1 9 8 c2 0 0 >>> data.ix[0] key1 9 key2 8 >>> data.ix[:'c2',:] key1 key2 c1 9 8 c2 0 0
缺失值處理:對缺失數據行進行刪除或填充
#Series data.dropna() data[data.notnull()] #DataFrame data.dropna() #丟棄任何含有缺失值的行 data.dropna(how='all') #丟棄全為NA的行 data.dropna(axis=1, how='all') #丟棄列 data.fillna(0,method='ffill') #缺失值替換成0, data.fillna({1: 0.5, 3: -1},inplace=True) #對不同的列填充不同的值 fillna默認返回新對象,inplace表示就地修改
重復值處理:重復值的判斷與刪除
data.duplicated() #表示各行是否重復行,返回布爾值 data.drop_duplicates() #返回一個移除重復行的DataFrame data.drop_duplicates(['key1']) #根據key1列過濾重復項,默認保留第一個出現的值組合 data.drop_duplicates(['k1', 'k2'], take_last=True) #保留最后一個值組合
異常值處理:清除不必要的空格和極端、異常數據
相關操作:描述性統計、Apply、直方圖等
合並:符合各種邏輯關系的合並操作
分組:數據划分、分別執行函數、數據重組
Reshaping:快速生成數據透視表
