2015-10-21 53 views
3

像這樣簡單的代碼不會對我的Python殼工作了:數據框對象有沒有屬性「樣品」

import pandas as pd 
df=pd.read_csv("K:/01. Personal/04. Models/10. Location/output.csv",index_col=None) 
df.sample(3000) 

我得到的錯誤是:

AttributeError: 'DataFrame' object has no attribute 'sample' 

DataFrames肯定有一個樣本功能,並且這用於工作。 我最近遇到了一些麻煩安裝和卸載,然後蟒蛇的另一分佈。我不知道這可能是相關的。

我以前有一個類似的問題,當試圖執行一個腳本,它與我導入的模塊具有相同的名稱時,這裏不是這種情況,並且pandas.read_csv實際上正在工作。

這是什麼原因?

+0

什麼是熊貓版本?使用'pd .__ version__'進行檢查。 –

+0

的版本是0.14.1 –

+0

你說的沒錯,在0.16.1加入樣品。自從此前工作之後,我一定會無意中降級了我的熊貓。謝謝。 –

回答

6

如在給定的documentation of DataFrame.sample -

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)

返回從對象的軸項的隨機樣本。

新的0.16.1版本。

(Emphasis mine)。

DataFrame.sample0.16.1加入,你可以 -

  1. 升級pandas版本最新,您可以使用pip的是,在示例 -

    pip install pandas --upgrade 
    
  2. 或者,如果你不」不想升級,並希望從數據框品嚐幾行,你也可以使用random.sample(),示例 -

    import random 
    num = 100 #number of samples 
    sampleddata = df.loc[random.sample(list(df.index),num)] 
    
+0

謝謝。有用。採樣數據返回132,而不是100個採樣。總是返回比指定更多的樣品數量?可能是什麼問題呢? – priya