2013-09-10 35 views
0

我對我遇到的問題有點困惑。我一直能夠對數據幀列進行求和和分片。下面是我在擺弄數據框:Python Pandas Dataframes Dtypes是假的?

In [24]: df2.dtypes 
Out[24]: 
day    object 
imps   object 
clicks   float64 
total_convs float64 
revenue  float64 
cost   float64 
rpm   float64 
dtype: object 

現在,當我試試這個:

total_imps = sum(list(df1['imps'])) 

我得到一個類型錯誤。我一直能夠切片和切分數據幀,所以我想知道如果我從這個數據幀拉出的csv文件只是奇怪的。我試過了:

df2 = df2.astype(float) 

但在這種情況下,'日'列不會轉換。我也試過:

df2[['imps','clicks','total_convs','revenue','cost']] = df2[['imps','clicks','total_convs','revenue','cost']].astype(float) 

這讓我:

In [24]: df2.dtypes 
Out[24]: 
day    object 
imps   float64 
clicks   float64 
total_convs float64 
revenue  float64 
cost   float64 
rpm   float64 
dtype: object 

這是很好的,但我現在還不能總結一下它的任何。這樣做只會再次返回TypeError。在這一點上,我也介意將ti-83拉出來,並且只需手動添加這些數字,但我需要這樣做,以實現自動化。

+0

你可以顯示文件的一部分嗎?閱讀和如何操作(以及該列的內容)和熊貓版本 – Jeff

+0

我認爲跳轉到TI-83可能只是一個* tad *過早。可以顯示'df2.head()'和/或'df.head()'? –

+1

正如我們想說的,「堆棧跟蹤或它沒有發生」 –

回答

-1

出於某種原因,輝煌,這個工程:

ll = list(df2['imps']) 
total_imps = sum(ll) 

但這並不:

total_imps = sum(list(df2['imps']) 

萬歲大熊貓。

+1

這似乎不太可能。你可以編輯包括一個完整的記錄? (例如,你錯過了一個關閉''',所以這不能*完全*你做了什麼。) – DSM