データファイルの拡張子(CSV, TSV って何?)
データファイルの拡張子
プログラムが読み込むデータのファイルは、ほとんどが「テキストファイル(広義の意味で)」です。文字だけのファイルであれば、「.txt」であることが多いですが、数値データの場合は、「.csv」や、「.tsv」になっていることが多いでしょう。
「.csv」は、カンマ区切りのテキストファイルです。行の区切りは、「改行」ですが、列の区切りの文字に 「,」(カンマ)が用いられているので、 Comma Separated Value なので、 CSV です。下記のようなデータです。
name,data1,data2
a,1,3
b,10,20
これに対して、「.tsv」は、タブ区切りのテキストファイルです。列の区切りがカンマではなく、「tab」(タブ)になっています。この「タブ」は、特殊な文字で通常のテキストエディタで開いても見えない文字です。特殊な空白として表示されます。対応するコンソールで表示させると、下記のように整列させる働きがあります。
name data1 data2
a 1 3
b 10 20
プログラム用のエディタでは、「\t」として表示させることもあります。(改行は「$」で表示されます。)
name\tdata1\tdata2$
a\t1\t3$
b\t10\t20$
拡張子が正しいとは限らない
上記のように、区切りの文字が異なるだけで、CSV も TSV もテキストファイルであることには違いがありません。拡張子は絶対に正しくないといけない、というわけでもないので、タブ区切りのデータだったとしても、ファイルの拡張子が、「.txt」になっていることもよくあります。
拡張子の裏技的な使い方としては、タブ区切りのテキストファイルを作成して、拡張子を 「.tsv」ではなく、「.xls」とする方法があります。そうすると、中身はエクセルファイルでないにもかかわらず、ダブルクリックするとエクセルで読み込むことができます。
逆に、「.xls」だからエクセルファイルだと思っていても、テキストエディタで開くと、実はタブ区切りのテキストファイルだったということもあります。