Python 如何基于数据帧中的同一索引将同一列中的值相乘?

Python 如何基于数据帧中的同一索引将同一列中的值相乘?,python,pandas,dataframe,Python,Pandas,Dataframe,我有多个列和多个不同的索引,所以我对逻辑流感到困惑 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.

我有多个列和多个不同的索引,所以我对逻辑流感到困惑

   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一起使用

df1 = df.prod(level=0)
替代解决方案由索引使用:

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