Python的pandas的Dataframe使用groupby分組並求每組的統計值

獨孤尚良dugushangliang發表於2020-12-05

版權宣告:轉載請註明作者(獨孤尚良dugushangliang)出處:https://blog.csdn.net/dugushangliang/article/details/110690440

 

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(6, 4), index=list(range(6)), columns=list('abcd'))
df['d']=[1,2,2,1,1,2]
#這是依照d列為分組,d列中相同值的被分到一組
df2=df.groupby(df['d'])

此時的df2是一個pandas.core.groupby.generic.DataFrameGroupBy物件,for迴圈一下得到的是一個元組,第一個元素是分組的相同值,第二個則是一個Dataframe物件。

for k,dfi in df2:
    print(k)
    #下面這行是隻取a/b/c三列資料,並把資料轉為float,因為字串不能計算。
    dfii=dfi[['a', 'b', 'c']].astype('float')
    print(dfii['a'].max())
    print(dfii['b'].min())
    print(dfii['c'].sum())

 

獨孤尚良dugushangliang——著

相關文章