版权声明:转载请注明作者(独孤尚良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——著