通过两个DataFrame与Pandas的乘法来构建Panel

时间:2015-09-04 09:06:39

标签: python pandas multiplication

我的目的是在返回Panel的两个DataFrame之间进行元素相乘。

我有两个DataFrame:

a = pd.DataFrame(1, index=['a','b','c'], columns=[0,1,2,3,4])
Out[50]: 
     0    1    2    3    4
a  NaN  NaN  NaN  NaN  NaN
b  NaN  NaN  NaN  NaN  NaN
c  NaN  NaN  NaN  NaN  NaN

b = pd.DataFrame(index=[0,1,2,3,4], columns=['X', 'Y', 'Z'])
Out[53]: 
     X    Y    Z
0  NaN  NaN  NaN
1  NaN  NaN  NaN
2  NaN  NaN  NaN
3  NaN  NaN  NaN
4  NaN  NaN  NaN

我希望得到一个小组p,例如:

p.items = [0,1,2,3,4]
p.major_axis = ['a','b','c']
p.minor_axis = ['X', 'Y', 'Z']

其中:

p.loc[3, 'b', 'Z'] = a.loc['b', 3] * b.loc[3, 'Z']

当然,两个DataFrame都充满了真实的价值。 我需要一些pythonic避免使用循环。您对如何执行此操作有任何想法吗?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

最后,如果你没有太多的项目,一个简单的循环是非常有效的:

{{1}}