【发布时间】:2014-02-08 18:22:42
【问题描述】:
我有一个数据框 (a) ,我想从中减去一个列表 (b),按列:
import numpy as np
import pandas as pd
In:a=pd.DataFrame(np.arange(0,20).reshape(5,4))
print(a)
Out: 0 1 2 3
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
3 12 13 14 15
4 16 17 18 19
In: b=[1,2,3,4,5]
我希望这个操作可以工作:
c=a-b
但是我得到一个错误。
下面的操作做了我想要的,但它不优雅。这样做的正确方法是什么?
In: c=(a.T-b).T
print(a)
Out: 0 1 2 3
0 -1 0 1 2
1 2 3 4 5
2 5 6 7 8
3 8 9 10 11
4 11 12 13 14
【问题讨论】:
标签: python numpy pandas broadcast