コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

Tab-Separated Values

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Tab-separated values
拡張子.tsv, .tab
MIMEタイプtext/tab-separated-values
種別マルチプラットフォーム、シリアルデータストリーム
包含物フィールドが分離されたリストとして構成されたデータベース情報
国際標準IANA MIME type

Tab-Separated Values (TSV) は、データベースにおける表表計算データなど、表形式でデータを格納するためのシンプルなテキスト形式のデータ形式であり[1]データベース間で情報を交換する方法の1つである[2]

TSV形式における各レコードは、テキストファイルの1行である。レコードの各フィールド値は、タブ文字で区切られる。すなわち、TSV形式はDelimiter-Separated Values英語版(区切り文字区切り形式)の一種である。タブ区切り形式ともいう。

TSVフォーマットはシンプルなファイルフォーマットであり、多くのコンピュータプログラムが対応しているため、異なるコンピュータプログラム間で表形式のデータ交換英語版するためによく使用される。TSVは、一般的に使用されているComma-Separated Values(CSV形式、タブ区切り形式)に代わるものである。CSV形式ではコンマ区切り文字としているため、フィールドにコンマが含まれる場合には、これをエスケープしないと問題が生じる。コンマはテキストデータでは頻出する文字であるが、タブは一般的なテキストの中に出現することは稀である。TSVのIANA標準[2]では、フィールドにタブ文字の使用を禁止している。

[編集]

アイリス・データセット英語版[注釈 1]の先頭をTSV形式にすると、以下のようになる。

Sepal length	Sepal width	Petal length	Petal width	Species
5.1	3.5	1.4	0.2	I. setosa
4.9	3.0	1.4	0.2	I. setosa
4.7	3.2	1.3	0.2	I. setosa
4.6	3.1	1.5	0.2	I. setosa
5.0	3.6	1.4	0.2	I. setosa

上記のTSVプレーンテキストは、以下の表データに対応している。

Sepal length Sepal width Petal length Petal width Species
5.1 3.5 1.4 0.2 I. setosa
4.9 3.0 1.4 0.2 I. setosa
4.7 3.2 1.3 0.2 I. setosa
4.6 3.1 1.5 0.2 I. setosa
5.0 3.6 1.4 0.2 I. setosa

利点

[編集]

カンマ区切り形式と比較した場合下記のような利点がある

  • UNIX系ソフトウェアやMicrosoft Excelなど標準形式として扱っているソフトウェアが多く、読み込みや書き出しの手間がひと手間すくないことが多い。
    • 例:
      • cut 何も指定しなければ入力をタブ区切りとして受け付ける。[3]
      • mysql 何も指定しなければファイルに出力するときの形式がタブ区切りとなる。またmysqlimportで取り込む場合も何も指定しなければタブ区切りとなる。
      • Microsoft Excel コピー&貼り付けの形式がタブ区切りとなっている。
  • タブは入力フォームに入力できないことが一般的で、解析の際、区切り文字がフィールドに混在することを想定した処理を省略できる。 例えばHTMLフォームの入力だけを格納しているmysqlのテーブルをファイルに出力するとタブが使われているのは区切り文字だけであると想定できる。 なお、HTMLのフォームを使わずHTMLのリクエストから迂回してタブを入力することもできるが、本来の経路ではタブを入力できないはずなのでタブが入力された場合は不正としてエラーにできる点も利点となる。

関連項目

[編集]

脚注

[編集]

注釈

[編集]
  1. ^ テキスト処理のテストデータとしてよく使われる、アヤメ属の品種データ

出典

[編集]
  1. ^ How To Use Tab Separated Value (TSV) Files Published by the International Monetary Fund
  2. ^ a b Definition of tab-separated-values (tsv)”. Internet Assigned Numbers Authority (IANA). 2020年5月4日閲覧。
  3. ^ cut(1) - Linux manual page”. man7.org. 2023年11月20日閲覧。

参考文献

[編集]

外部リンク

[編集]