我似乎无法在python中使用dataframe
和groupby()
创建新的.mean()
。
我有一个这样的数据框:
df = pd.DataFrame({'Col1': {0: 'A', 1: 'A', 2: 'B', 3: 'A', 4: 'B', 5: 'B', 6: 'B'},
'Col2': {0: 123, 1: 249, 2: 222, 3: 789, 4: 369, 5: 147, 6: 559},
'Col3': {0: 'A', 1: 'B', 2: 'B', 3: 'B', 4: 'A', 5: 'B', 6: 'A'},
'Col4': {0: 542, 1: 789, 2: 123, 3: 456, 4: 369, 5: 147, 6: 258}})
Col1 Col2 Col3 Col4
0 A 123 A 542
1 A 249 B 789
2 B 222 B 123
3 A 789 B 456
4 B 369 A 369
5 B 147 B 147
6 B 559 A 258
我需要一个新的dataframe
按唯一字符串折叠Column1
,计算唯一字符串的频率和百分比,然后按这些组平均Column2
。
然后,我需要在Column3
中对Column4
和Dataframe1
执行相同的操作,并将它们连接到Dataframe2
中的行下面:
NewCol1 ColFreq ColPerc ColumnAvg
A 3 43% 387
B 4 57% 432
A 3 43% ...
B 4 57% ...
有人可以帮助我在迭代列表列表时如何做到这一点吗?