分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
ここで CSV を TSV に変換できます。無料、アカウント不要です。ファイルを上の枠に落とせば、数秒で結果がダウンロードできる状態になります。 変換はお使いのブラウザーの中で行われるので、ファイルはアップロードされません。Windows でも macOS でも Linux でも、iPhone でも Android でも同じように動き、通信を切っても動き続けます。
一度に100ファイルまで。フォーマットが混ざっていても構いません。
順番に変換し、まとめてZIPでダウンロードします。
CSV から TSV
TSV はカンマの代わりにタブを区切り文字に使う表形式です。データの中にカンマが頻繁に登場する場合、TSV のほうが目視での確認や単純なテキスト処理がしやすくなります。
一部の統計ソフトや言語処理系のツールは TSV を標準的な入力形式として扱っており、そうした環境に渡すための変換として使われます。
この変換は一度データを解析してから TSV として書き出す処理で、テキストの中のカンマをタブに置換しているわけではありません。引用符で囲まれた欄や、その中にあるカンマ、欄をまたぐ改行も正しく解釈されたうえで、あらためて TSV の形式に書き出されます。
そのため、住所欄にカンマが入っている CSV のような、単純な文字置換では壊れてしまうデータも問題なく変換できます。
この過程で型が推定されます。数値に見える値は数値として扱われ、`true` と `false` は真偽値になります。数量や区分の列には、ほぼ確実にこれが望みどおりの結果です。
識別子には間違った答えです。`007` は `7` になり、郵便番号や品番、口座番号は先頭の 0 を黙って落とします。日本のデータではこれがよく当たります。`0600001` という郵便番号、`03` で始まる電話番号、13 桁の法人番号。最後のものは 0 が消えるどころか指数表示になることさえあります。数量ではなく符号を扱っている列があるなら、変換後の出力を必ず確認してください。
数値に見える値は数値になってしまうため、符号としての列を守るには、変換の前にその列が「数値ではない」と分かる形にしておく必要があります。表計算ソフトで先頭に `'` を付ける、接頭辞を足す、書き出しの時点で引用符で囲む。どれでも文字列としての印になります。
一般則としては、その列の 2 つの値を足すことが一生ないなら、それは識別子で、文字列のままでいたがっています。郵便番号、品番、電話番号、口座番号、法人番号はすべてこの足し算の試験に落ちます。
空の欄は空文字列ではなく null になります。見出しが `a,b,c` の行に `1,,3` と書かれていれば、出てくるのは `{"a":1,"b":null,"c":3}` に相当する扱いです。値の型を判定する処理が、空の欄には null を割り当てます。
CSV には「空だった欄」と「そもそも無かった欄」を区別する方法がなく、その違いに意味がある場合は、CSV の側で明示的に書いておくか、あとから復元するしかありません。元の形式が運べない情報を、変換ツールが取り戻すことはできません。
同じ見出しを持つ列が 2 つあると、後ろの列が勝ち、前の列は警告もなく消えます。直す場所は元の CSV の見出し行です。
見出しが日本語のままでも問題なく変換できますが、Excel から書き出した CSV は Shift-JIS 系の CP932 であることが多く、UTF-8 として読み込むと文字化けします。書き出すときに文字コードを確認してから変換してください。
解析は速く、限界はメモリーです。データ全体をいったん組み立ててから TSV として書き出すためです。数十メガバイトは問題なく通り、数百メガバイトになるとブラウザーのタブが苦しくなり始めます。
その規模のファイルを継続的に扱う必要があるなら、ブラウザーの変換機ではなく、逐次読み込みができるスクリプトのほうが適しています。
| CSV | TSV | |
|---|---|---|
| 正式名称 | Comma-Separated Values | Tab-Separated Values |
| 拡張子 | .csv | .tsv, .tab |
| メディアタイプ | text/csv | text/tab-separated-values |
| 最初の公開 | 1972 | 1993 |
| 仕様 | RFC 4180 | IANA text/tab-separated-values |
| ライセンス | オープン標準 | オープン標準 |
| 現在の位置づけ | 現行 | 現行 |
| ブラウザで開けるか | 対応なし | 対応なし |
| 代わりに検討される形式 | XLSX, JSON, Parquet | JSON |
失われるものはありません。CSV も TSV も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。
Microsoft Excel、LibreOffice Calc、pandasは CSV と TSV のどちらも読めるので、別のプログラムを開かずに、結果を元のファイルと並べて確かめられます。
CSV は 1972 年に登場しました。 RFC 4180 で規定されています。ファイルが、それを書いた道具より長く生きなければならないなら、この一点には値打ちがあります。
TSV は 1993 年から使われています。規定は IANA text/tab-separated-values です。Microsoft Excel、LibreOffice Calc、pandasがこの形式を読めます。
CSV は 1972 年、TSV は 1993 年に登場しました。人に渡すならたいてい古いほうが安全で、新しいほうは同じ仕事をより少ないバイト数で片づけます。
いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。
はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。
いいえ。TSV は同じ内容を何も捨てずに保持できるので、結果は品質の点で元のファイルと同じです。
失われるものはありません。CSV も TSV も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。