大量のCSVデータの中から重複行を削除するときってどうしてます?
エクセルだと全行開けないし、わけわからない関数とか書けないし、動作は重いし、あーどうしようって場合ありませんか。
こんな悩みともスキっと解決おさらばな方法があります。
この方法はエクセルを使わずに、なんとたった1秒であっという間に重複行が削除できるんです。
サクラエディタでサクッと削除
サクラエディタとは、ウィンドウズのために開発された高機能な日本語テキストエディタです。もとから高機能なんですが、外部機能を追加することで、さらに進化するテキストエディタです。メモ書き程度からプログラム作成まで幅ひろく使えます。
しかも無料。
こんな高機能で無料っていいんですか。いいんです。
サクラエディタのダウンロードはこちら
http://sakura-editor.sourceforge.net/download.html
たったの3ステップでサクッと削除
データをサクラエディタにコピーしたら下記手順で重複行を削除。
- Ctl + a 全選択
- alt + a 昇順に並び替える
- alt + m マージ
たったこれだけです。
実際に13万行の住所データで試したところ見事に重複行が削除されました。
ほんと、感動的に楽でした。
注意点としては、前後に並んだ行のみが削除対象になります。手順3を実行する前に、できるだけデータの並び替えをしておきましょう。
差分を確認するには
実際にどの行が重複行なのかを確認することも可能です。この差分確認、diff機能を有効にするには、拡張機能のdiff.exeが必要。
diff.exe ダウンロード
http://www.geocities.jp/maru3128/sakura.html
解凍後、サクラエディタのフォルダにdiff.exeを入れると機能が有効になります。
差分を抽出するには
場合によっては重複行を抽出したい場合もあると思います。
そんな時は、WinMerge を私は使っています。
WinMergeは2つのファイルの相違点を表示してくれるソフトです。
元データファイル と サクラエディタでマージしたデータファイル を使用して、相違点つまりサクラエディタで重複行として削除された行だけを抽出します。
表示>diffコンテキスト>0
で重複行のみが表示されます。
WinMerge
http://www.geocities.co.jp/SiliconValley-SanJose/8165/winmerge.html
サクラエディタ
サクラエディタはかなり高機能テキストエディタです。マクロ機能、複数ファイルにまたがってのgrep機能など、この高機能ぶりは使いこなせそうにないw
でもウィンドウズユーザーならサクラエディタは入れておいて損のないテキストエディタです。
サクラエディタのダウンロードはこちら
http://sakura-editor.sourceforge.net/download.html