2015-07-10 45 views
0

當在python熊貓上運行重複項時,似乎有一個錯誤導致DataFrame以錯誤順序排序。Python熊貓以錯誤的順序丟棄重複項

具體來說,我試圖提供兩列來執行重複刪除。相反的:

df.drop_duplicates(['a', 'b'], inplace = True) 

我:

df.drop_duplicates('a', 'b', inplace = True) 

其中我認爲造成這個問題,因爲它與加方括號中消失了。

我不明白爲什麼這樣做:a)不會錯誤地定義錯誤定義的輸入,b)更改丟棄和保留的內容的順序。

回答

0

docs for drop_duplicates說的論據是:

  • 子集:列標籤或標籤的序列,可選 只考慮某些列識別重複,默認情況下使用的所有列
  • take_last:布爾值,默認爲False 取一行中最後一次觀察到的行。默認爲第一行
  • 就地:布爾值,默認爲false 是否下降重複的地方,或返回副本
  • 的cols:kwargs只子集的參數(已廢棄)

所以,你的電話號碼可能是btake_last,它被評估爲布爾型True。這是Python中的標準做法(檢查錯誤的輸入不全面)。

+0

嗨Ami,所以對字符串的默認布爾解釋是True,並且傳遞給了可選值。說得通。 謝謝 – Tom

+0

@Tom字符串的布爾解釋是*是否爲非空*。 –