2016-07-07 10 views
1

私はDataFrameを持っています。それはdfと呼ばせてください。drop_duplicatesの後にPandas DataFrame to_dictが失敗する

return df.to_dict(orient="records")は、dictsのリストを忠実に吐き出します。

しかし、私は

df.drop_duplicates 
return df.to_dict(orient="records") 

をすれば、それが失敗したと言う:

'関数' オブジェクトが何の属性 'to_dict'

答えて

2

を持っていない私はあなたが()を逃すと思いますが、なしの理由()drop_duplicatesは関数を参照するだけなので、dfは関数のコピーになります。それを実行するのLT(感謝コメントをandychase):

df = df.drop_duplicates() 
return df.to_dict(orient="records") 

または:

df.drop_duplicates(inplace=True) 
return df.to_dict(orient="records") 
+0

そうです。これがなぜであるかを説明するために、 '()'がなければ 'drop_duplicates'は関数を参照するだけなので、' df'は関数を実行した結果ではなく関数のコピーになります。 – andychase

+0

@andychase、素敵な説明、私はそれを答えに加えます。 – jezrael

関連する問題