我有多个列和多个不同的索引,所以我对逻辑流程感到困惑
list1 list2 list3
A 2 3 4
A 1 5 7
B 2 3 8
B 6 1 2
C 4 2 2
C 2 4 5
我想要的结果将是:
list1 list2 list3
A 2.0 15.0 28.0
B 12.0 3.0 16.0
C 8.0 8.0 10.0
答案 0 :(得分:3)
将DataFrame.prod
与level=0
一起使用:
df1 = df.prod(level=0)
替代解决方案是按索引使用GroupBy.prod
:
df1 = df.groupby(level=0).prod()
#alternative
df1 = df.groupby(df.index).prod()
print (df1)
list1 list2 list3
A 2 15 28
B 12 3 16
C 8 8 10