我有一些像這樣的資料框“A”(我認為這是熊貓系列):
1
2
3
4
另一個資料集“B”看起來像這樣(我認為這是 numpy.ndarray):
[5 4 3 2 1]
我試圖將“A”中的第一個元素與“B”中的所有元素相乘,“A”中的第二個元素與“B”中的所有元素相乘......所以最后我會得到這樣的結果:
5 4 3 2 1
10 8 6 4 2
15 12 9 6 3
20 16 12 8 4
如果可能的話,我想避免在這里使用任何回圈。
任何建議或意見....謝謝。
uj5u.com熱心網友回復:
使用numpy 廣播:
s = pd.Series(range(1,5))
a = np.array([5, 4, 3, 2, 1])
out = s.to_numpy()[:, None] * a
print (out)
[[ 5 4 3 2 1]
[10 8 6 4 2]
[15 12 9 6 3]
[20 16 12 8 4]]
如果需要資料幀:
df = pd.DataFrame(out)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/383421.html
