Python pandas乘以2列导致产品不正确

时间:2015-07-10 17:45:57

标签: python pandas

我有以下数据:

vwapDataGMD.head()
Out[311]:
                         price  size    return      logP         priceVol
time
2013-01-02 08:00:03  29.280000   800       NaN  3.376905  78863044.800000
2013-01-02 08:00:05  29.308889   900  0.000986  3.377891  78940854.422222
2013-01-02 08:15:29  29.314348   230  0.000186  3.378077  78955557.578261
2013-01-02 08:24:21  29.400000   158  0.002918  3.380995  79186254.000000
2013-01-02 08:35:48  29.400000   100  0.000000  3.380995  79186254.000000

当我将price和size列相乘时,我得到的priceVol列不正确。对于例如29.28 * 800 = priceVol = 23424但我的价格很高,价格= 78863044.800

我的代码如下:

vwapDataGMD['priceVol'] = vwapDataGMD.price * vwapDataGMD.size

我做错了什么?

1 个答案:

答案 0 :(得分:2)

我认为这是因为您使用vwapDataGMD.size来访问该列。但是pandas认为它是关键字size,因此返回数据帧的长度。请改用以下内容。

vwapDataGMD['priceVol'] = vwapDataGMD['price'] * vwapDataGMD['size']