標籤:必須 表格 複製 指定 基本 構建 broadcast data tac
pandas: 基於Numpy構建的資料分析庫
pandas資料結構:Series, DataFrame
Series: 帶有資料標籤的類一維數組對象(也可看成字典)
values, index
缺失資料檢測:pd.isnull(), pd.notnull(), Series對象的執行個體方法
Series對象本身及其索引都有一個name屬性,和pandas其他關鍵功能關係很密切
DataFrame: 表格型資料結構,列和行都有索引
擷取DataFrame列:字典標記方式,或者屬性方式(frame2[‘state‘]/frame2.state)
擷取DataFrame行:ix()方法
通過索引方式返回的列只是相應的資料檢視,而不是副本,Series的Copy方法可以顯示地複製列
DataFrame的index和column也有name屬性,可以自己設定
索引對象:pandas索引對象負責管理軸標籤和其他中繼資料,構建Series或者DataFrame時,所用到的任何數組或者其他序列的標籤會被轉換成一個Index. Index對象是不可以修改(immutable)的.
Index屬性
準系統
重新索引:建立一個適合新索引的對象reindex()
指定丟棄對象:drop()
索引選取和過濾:ix()
算術運算和資料對齊
pandas可以對不同索引對象進行算術運算,對不重疊值自動填滿NA
在算術方法中填儲值:fill_value
DataFrame和Series之間的運算:broadcast()
預設情況下DataFrame和Series之間的算術運算會將Series的索引匹配到DataFrame列,然後沿著行向下傳播;如果想匹配行且在列上廣播,必須使用算術運算方法
函數應用和映射
numpy的ufuncs(元素級數組方法),也可以用於操作pandas對象
DataFrame的apply()方法,可以將函數應用到行或者列形成的一維數組
排序和排名
排序:
sort_index() 對行或者列的索引排序(按照字典順序)
sort_index(by = ) 按照一個或者多個列中值進行排序
Series按值進行排序, order方法
排名:
rank()
帶有重複值的軸索引
索引的is_unique()屬性可以告訴你它的值是否是唯一的
匯總和計算描述性統計
sum()
mean()
describe()
描述和匯總統計函數
相關係數和共變數
對參數對進行計算得到,Series和DataFrame方法
唯一值,值計數,以及成員資格
唯一值:unique()方法
值計數:value_counts()方法計算一個Series中各個值出現的頻率
成員資格:isin, 用於判斷向量化集合的成員資格,可以選取Series或DataFrame列中資料的子集
處理缺失資料
過濾缺失資料:dropna
對於DataFrame對象,dropna預設丟棄任何含有缺失值的行; dropna(how = ‘all‘) 丟棄全為NA那些行.
如果是針對列,傳入axis = 1便可
填充缺失資料:fillna
傳入常數值:所有na被替換為常數值
傳入字典:不同的列填充不同的值
預設返回新的對象,但是也可以就地修改 inplace = TRUE
層次化索引:資料重塑和基於分組的操作(透視表)
stack和unstack
對DataFrame來說,每條軸都可以有分層索引.
根據層級進行匯總:DataFrame和Series的描述和匯總統計都用一個level選項.
使用列作為行索引,將行索引變為DataFrame的列:set_index() 相反reset_index()
[讀書筆記] Python資料分析 (五) pandas入門