私は2つのCSVを持っています。それぞれは、約1M行、n個の列と、同じ列を持っています。私は、2つのファイルを比較してどのような違いがあるのかを見つける最も効率的な方法を望んでいます。私は、エクセル関連のツールを使用するのではなく、このデータをPythonで解析する方が好きです。Pythonで2つのほぼ同じCSVを比較する最も効率的な方法は?
答えて
パンダを使用していますか?
import pandas as pd
df = pd.read_csv('file1.csv')
df = df.append(pd.read_csv('file2.csv'), ignore_index=True)
# array indicating which rows are duplicated
df[df.duplicated()]
# dataframe with only unique rows
df[~df.duplicated()]
# dataframe with only duplicate rows
df[df.duplicated()]
# number of duplicate rows present
df.duplicated().sum()
pandasは大文字の文字列を自動的に処理しますか?それとも最初に処理する必要がありますか?例えば'ジョン'対 'ジョン'。 –
自動的に処理します。それは 'ジョン'が 'ジョン'と等しいとは見えません。それが問題であれば、 'df ['column_name'] = df ['column_name']。str.lower()'を使ってすべての文字列値を小文字にすることができます。 –
これはすばらしいことです。ありがとうございました!私はパンダの図書館についていくつか調査します! –
効率的な方法は、(行数が少ない)最初のファイルから各行を読み取り、O(1)の複雑さを使用してアクセスできるSetまたはDictionaryのようなオブジェクトに保存することです。
次に、2番目のファイルから行を読み込んで、それがセットに存在するかどうかを確認します。
ありがとうございます。私は実際には実際の解決策を探していましたが、これは効率的にする方法について正しい答えがあることを理解していますので、私はupvoteと応答したいと思いました。ありがとうございました! –
- 1. Javaで2つのプリミティブを比較する最も効率的な方法は?
- 2. リストのデータを比較する最も効率的な方法
- 3. 2つの配列のアイテムを比較/ソートする最も効率的な方法は何ですか?
- 4. ブール値の2つの配列を比較する最も効率的な方法は何ですか?
- 5. 最も効果的な方法で2つのベクトルを比較する
- 6. 同じ長さの2つのBitArrayを効率的に比較する
- 7. ロット変数を比較する最も効率的な方法は? C#
- 8. PHPの効率的な比較方法
- 9. 効率的に2つのcsvと+300000のレコードを比較する(awkで)
- 10. ウェイポイントを節約し比較を行う最も効率的な方法は?
- 11. Pythonで3つのリストの値を効率的に比較する方法は?
- 12. 最も効率的な方法は、私は、「C#のCSVファイルの比較子を構築メートル
- 13. Tibcoの2つのほぼ同じプロセス
- 14. 最も効率的なページヒットを生成する最も効率的な方法
- 15. 2つのリストの要素を効率的に比較する方法は?
- 16. 2つの大きなテキストファイルの効率的なファイル比較
- 17. Pythonで2つの列の日付を効率的に比較する
- 18. Insertion Sortの2つの(ほぼ同じ)実装の比較。そのうちの1つが失敗する
- 19. Pythonでリレーショナル比較効率を測定する方法は?
- 20. 最も効率的な方法のハンドラ
- 21. 2つの非常に大きな数値(長いものよりも大きいもの)を比較するのに最も効率的な実行方法
- 22. Pythonで2つのペアを作る効率的な方法
- 23. StringBuilderオブジェクトを比較する効率的な方法
- 24. JSまたはangualrで効率的に配列を比較する方法2
- 25. 2つの個別ノードを照合する最も効率的な方法
- 26. 2つのデータセットをlaravelに連結する最も効率的な方法
- 27. ほとんどの高価な最近の注文を見つける最も効率的な方法
- 28. Javaで2つのリストを比較する効率的な方法は何ですか?
- 29. スパーク:計算上効率的な日付比較の方法は?
- 30. 最も効率的な方法
サンプルコードと入力ファイルから数行を追加してください。 –