簡體   English   中英

熊貓,行明智的點積

[英]pandas, row wise dot product

假設我在這里有一個DataFrame

In [2]: df = pd.DataFrame({'COL1':[1,2,3,4,5,9],
                'COL2':[5,3,6,9,2,4]})
In [3]: df
Out[3]:
   COL1  COL2
0     1     5
1     2     3
2     3     6
3     4     9
4     5     2
5     9     4

如何將向量[2, 1]逐行相乘[2, 1]以便df

In [4]: df
Out[4]:
   COL1  COL2
0     2     5
1     4     3
2     6     6
3     8     9
4    10     2
5    18     4

您可以通過numpy array倍數:

print (df * np.array([2,1]))
   COL1  COL2
0     2     5
1     4     3
2     6     6
3     8     9
4    10     2
5    18     4

或按具有與mul的df列相同索引的Series

print (df.mul(pd.Series([2,1], index=df.columns), axis=1))
   COL1  COL2
0     2     5
1     4     3
2     6     6
3     8     9
4    10     2
5    18     4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM