GroupBy,Apply用法筆記
阿新 • • 發佈:2017-09-08
一起 實施 ram 用法 ron ner and 數值 文件中
GroupBy針對DataFrame將其按照某個準則分組
1.常見的調用形式為:
df[‘a‘].GroupyBy(df[‘b‘]) df.GroupyBy(df[‘b‘,‘c‘])#層次化的索引 df.GroupyBy([‘b‘,‘c‘])#直接將columns名稱作為索引鍵進行索引
以上可理解為將Series作為分組鍵,y此外還可以將任何適當長度的array作為分組鍵,目前未嘗試過
2.常用的方法:
df.GroupyBy(df[‘b‘]).mean()#非數值列數據直接跳過 df.GroupyBy(df[‘b‘]).size()#返回一個分組的大小的Series(每個值對應的是當前鍵元素的個數)
3.舉例GroupyBy的應用:
如給出的csv文件中columns包含[‘City‘,‘State‘,‘Population‘],讓求出每個州所有城市人口的平均值,此時就可以用
df[‘population‘].GroupBy([‘State‘]).mean()
註:GroupyBy函數說明在http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.groupby.html#pandas.DataFrame.groupby
Apply函數-可針對DataFrame和Series操作,返回是DataFrame和Series
1.理解:apply將他應用的對象拆分到小一級,然後讓拆分後的每個子部分去實施apply括號內的函數操作,再把操作後的結果合在一起
2.apply可以說是非常常用,這裏只說一個基本的用例,連帶理解了lambda的用法
energy[‘Energy Supply‘]=energy[‘Energy Supply‘].apply(lambda x : x*1000000)
註:Apply函數說明 http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.apply.html#pandas.DataFrame.apply
GroupBy,Apply用法筆記