原来的data
变为字典,带上index
a=data.to_dict()
变为字典,不带index
a=data.to_dict(orient='list')
apply
给data增加一个求和列
data['sum']=data.apply(lambda x:x.sum(),axis=1) # 按行求和
或者
data.sum(axis=1)
drop
丢掉sum列
data.drop('sum', axis=1, inplace=True)
groupby
原始的dataframe:
-
1、按第一列partName分组,并展示分组后的degree和score
data_part_groupby = data.groupby(['partName']).apply(lambda x: [list(x['score']), list(x['degree'])]) partDataFrame = pd.DataFrame(list(data_part_groupby.values), index=data_part_groupby.index, columns=["score", 'degree'])
//优化为
partDataFrame = data.groupby(‘partName’).agg(score=(‘score’, list), degree=(‘degree’, list))
```
分组后data_part_groupby结果如下:
partDataFrame结果如下:
- 2、按第一列partName分组,并展示分组后的最大的score
data_part_groupby = data.groupby(['partName'])['score'].max()