2016-04-21 14 views
0

當屬性錯誤我有一個數據幀無需重新取樣

 date count 
0 2012-03-23 2 
1 2012-03-25 1 
2 2012-03-26 1 
3 2012-03-27 1 
4 2012-03-28 3 
5 2012-04-05 2 
6 2012-04-06 1 
7 2012-04-08 2 
8 2012-04-10 1 
9 2012-04-11 1 

我試圖用

df.set_index('date').resample('D').fillna(0).reset_index() 

獲得之日起列一個日期範圍,但這會導致

AttributeError: 'int' object has no attribute 'lower' 

儘管日期列中沒有字符串。

任何想法是什麼造成錯誤?

+0

'resample('D')'不返回數據幀。當你在那個對象上調用'fillna'時,我猜它試圖在索引上做到這一點。你有重複的日期嗎?如果是的話,你打算如何處理它們(例如採取平均值,最大值等)? – ayhan

+0

看起來像我必須使用'resample('D')。mean()'now。奇怪 –

+0

我再次檢查和重新取樣的'fillna'方法需要一個方法參數。它與'df.fillna'不同,所以如果你傳遞0,它將它作爲一個方法而不是一個值來接受。 @PaulH建議在另一篇文章中使用'df.resample(「D」)。asfreq()':http://stackoverflow.com/q/36775460/2285236 – ayhan

回答

0

未來的警告說resample現在是一個延期的方法。

你已經拼湊出瞭解決方案。

df.set_index('date').resample('D').mean().fillna(0).reset_index()