如果我有两个DataFrame,我如何将它们按列相乘以生成带有结果的DataFrame。例如......
df1 = pd.DataFrame(np.random.randint(10, size=(5, 4)), columns=['A', 'B', 'C', 'D'])
A B C D
0 6 9 3 8
1 1 7 9 9
2 6 2 0 8
3 3 6 8 4
4 6 0 4 8
df2 = pd.DataFrame(np.random.randint(10, size=(5, 4)), columns=['A', 'B', 'C', 'D'])
A B C D
0 9 8 5 3
1 9 5 6 7
2 6 9 6 3
3 7 6 2 5
4 1 5 2 7
结果就是这个......
A B C D
0 54 72 15 24
1 9 35 54 63
等。
答案 0 :(得分:1)
[CW;只是为了解决未回答的问题清单..]
我想你想要df1 * df2
。例如:
>>> df1 = pd.DataFrame(np.random.randint(10, size=(5, 4)), columns=['A', 'B', 'C', 'D'])
>>> df2 = pd.DataFrame(np.random.randint(10, size=(5, 4)), columns=['A', 'B', 'C', 'D'])
>>> df1
A B C D
0 0 6 5 7
1 8 6 4 0
2 6 2 4 3
3 8 8 7 6
4 8 7 9 0
[5 rows x 4 columns]
>>> df2
A B C D
0 0 0 3 0
1 8 5 6 5
2 7 4 9 7
3 8 4 4 1
4 2 5 6 4
[5 rows x 4 columns]
>>> df1 * df2
A B C D
0 0 0 15 0
1 64 30 24 0
2 42 8 36 21
3 64 32 28 6
4 16 35 54 0
[5 rows x 4 columns]