2014-12-04 90 views
1

我有一個有重複條目的熊貓數據框,並且我想使用seaborn創建tsplot。我打電話drop_duplicates對數據幀(甚至調用reset_index()),然而,當我做的情節我仍然得到索引包含drop_duplicates之後的重複條目

ValueError: Index contains duplicate entries, cannot reshape 

是有一個原因drop_duplicates不會解決這個問題?

編輯我甚至通過在下降後的數據幀調用duplicated檢查,所有行顯示False。正如我所料。

我意識到這裏沒有太多可以脫離的地方,我只是想看看是否有什麼直覺我錯過了。將嘗試創建一個小例子來顯示在這裏,但我的數據集是相當大的

+0

如果你不能顯示你的數據,請你至少你想放棄時所使用的代碼複製重複。目前很難提供幫助。 – cel 2014-12-04 22:40:10

+1

'drop_duplicates'不適用於索引,而是數據框中的值! (所以它查找重複的行,而不是重複的索引)。但你也有索引上的相同功能(http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Index.drop_duplicates.html) – joris 2014-12-05 08:02:55

+0

@joris謝謝!如果你寫了這個答案,你會得到支票 – sedavidw 2014-12-05 13:42:00

回答

1

drop_duplicates不起作用的索引,但在數據幀的值! (所以它查找重複的行,而不是重複的索引)。

但你也有對指數相同的功能(見doc):

df.index.drop_duplicates() 

隨着最終得到的指數,可以重新編制。
另一個選項是將索引作爲列添加,並在該列上使用DataFrame.drop_duplicates
另一種選擇是使用GROUPBY:df.groupby(level=0).first()(和你適應了first你想重複的行做什麼)