2016-05-03 224 views
-2

我正在使用python中的一些房屋數據。我試圖以平方英尺計算價格並將其添加到數據框中。我能夠單獨進行計算,但是當我嘗試將列添加回數據框時,我不斷收到錯誤。在熊貓中添加列

代碼:

price_feet=[data['price']/data['sqft_living']] 

這適用於它自己

這不

data['price_feet']=[data['price']/data['sqft_living']] 

錯誤接收:值 長度不符合指標

我的長度假定數據與兩個變量沒有匹配。這就是爲什麼我能夠進行計算但不能將其添加回數據框。我嘗試查找一些答案,但顯然還沒有找到正確的修復。

謝謝!

+0

答案在錯誤信息中是正確的。 。 。 – dbliss

回答

1

嘗試沒有括號:

data['price_feet']=data['price']/data['sqft_living'] 

的方括號返回一個列表,其中第一項是一個系列。你只是想要系列。

+1

第一個也是唯一的項目 – dbliss

0

也可以使用div

data = pd.DataFrame({'price': [1000, 2000], 'sqft_living': [100, 250]}) 
data['price_feet'] = data.price.div(data.sqft_living) 

>>> data 
    price sqft_living price_feet 
0 1000   100   10 
1 2000   250   8 

簽名:data.price.div(其他,級別=無,fill_value =無,軸= 0) 文檔字符串: 浮動系列和其他的分裂,元素明智的(二元運算符truediv)。

相當於series/other,但支持將一個fill_value替換爲 缺少的數據中的一個輸入。