2015-07-10 68 views
1

乘以2个的结果,我有以下数据:Python的大熊猫不正确的产品

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 

当我乘的价格和规模列,我得到的priceVol列这是不正确。对于例如29.28×800 = priceVol = 23424,但我得到的priceVol大量= 78863044.800

我的代码是以下几点:

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

我在做什么错?

+3

我想这是因为您使用'vwapDataGMD.size'来访问列。但熊猫认为它是关键字'size',因此返回数据帧的长度。用这个代替'vwapDataGMD ['priceVol'] = vwapDataGMD ['price'] * vwapDataGMD ['size']' –

+0

@JijunxunLi:很好的演绎! – bernie

+0

谢谢@JunxunLi。这工作! –

回答

2

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

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