0
我有一個數據幀的數據是這樣的:問題而dataframes在大熊貓比較FLOAT32對象
>>> data.head(10)
stock pop ma order
Date
2016-01-04 325.316 82.0 NaN -1
2016-01-11 320.036 83.0 NaN -1
2016-01-18 299.169 79.0 82.5 -1
2016-01-25 296.579 84.0 81.0 -1
2016-02-01 295.334 82.0 81.5 -1
2016-02-08 309.777 81.0 83.0 -1
2016-02-15 317.397 75.0 81.5 -1
2016-02-22 328.005 80.0 78.0 -1
2016-02-29 315.504 81.0 77.5 -1
2016-03-07 328.802 81.0 80.5 -1
所以我想比較data.po與data.ma.If寶是比馬大,然後爲了更大會是-1,如果po小於ma,那麼它是1.我爲它寫了下面的代碼。
data['order'][data.pop > data.ma] = -1
data['order'][data.pop < data.ma] = 1
當我運行ma大於po後,順序值沒有變化。正如我在表中看到的,當我運行pop比ma代碼更大時,所有內容都會變成-1。在本質上,我認爲它必須是數據類型的錯誤,所以我確保兩者都是相同的,並將它們都轉換爲float32。即使在那之後它也沒有運行。
>>> data.dtypes
stock float64
pop float32
ma float32
order int64
dtype: object
任何建議可能會出錯將不勝感激。
我看到所以基本上我寫的代碼進行比較的方法,因此輸出是相同的每次。理解並非常感謝! – Anti21