pandas提供了類似關(guān)系型數(shù)據(jù)庫的二維表容器,并基于容器上提供了很多高效的函數(shù)。通用導(dǎo)入寫法為:import pandas as pd
官網(wǎng)10分鐘上手教程介紹得很好,基本上重要的內(nèi)容都有介紹,并且對每個主題都提供進(jìn)一步深入的文檔鏈接,可以將該網(wǎng)頁作為學(xué)習(xí)pandas的主目錄。pandas主要提供了一個二維表的數(shù)據(jù)結(jié)構(gòu)DataFrame,該表的每一列是一個Series對象。
DataFrame對象
構(gòu)造入口:
df = pd.DataFrame( 二維數(shù)組 ) #通常傳入的是numpy二維數(shù)據(jù)
df = pd.read_csv('file.csv', [index_col='A']) #讀取csv文件
df =pd.to_csv('filename.csv',index=[True|False]) #存儲到csv文件
查看數(shù)據(jù)
df.head( )
df.tail( )
df.describe( )
df.values #numpy格式的數(shù)據(jù),不包括index。常用于轉(zhuǎn)換到numpy
選擇數(shù)據(jù)
- 直接方式
特定列:df['sun']和df.sun效果相同
特定行:df[0:10] - 函數(shù)方式(推薦方法)
通過標(biāo)簽選擇 df.loc[行index,列名]
通過位置選擇 df.iloc[行下標(biāo),列下標(biāo)]
處理缺失數(shù)據(jù) NaN
提供了兩種處理缺失值的方式
刪除NaN所在行
df.dropna(how='any')
用某個值去替換
df.fillna(value=0)
Series對象
DataFrame的每一列是一個Series。
Series對象的函數(shù)較少直接使用,因?yàn)檎{(diào) df.func() 時已經(jīng)間接用到了。