| タブ区切りの値 | |
|---|---|
| ファイル名拡張子 | .tsv, .tab[ 1 ] |
| インターネットメディアの種類 | テキスト/タブ区切り値 |
| 統一型識別子(UTI) | 公開タブ区切りテキスト[ 2 ] |
| UTIコンフォメーション | パブリック.区切り値テキスト[ 2 ] |
| 開発者 | ミネソタ大学インターネットゴーファーチーム インターネット割り当て番号局 |
| 初回リリース | 1993年6月頃 |
| フォーマットの種類 | 区切り文字で区切られた値の形式 |
| コンテナ用 | フィールド区切りのリストとして整理されたデータベース情報 |
| 標準 | IANA MIMEタイプ |
タブ区切り値(TSV)は、表形式のデータを格納するためのプレーンテキスト データ 形式で、レコードの値はタブ文字で区切られ、各レコードは1行(つまり改行で区切られた行)です。[ 3 ] TSV形式は区切り文字で区切られた値(DSV)の一種で、一般的に使用されているコンマ区切り値(CSV)形式に似ています。
TSVは比較的シンプルな形式であり、表形式のデータを扱うソフトウェアによるデータ交換に広くサポートされています。例えば、TSVファイルはデータベースからスプレッドシートへの情報の転送に使用できます。
例
[編集]以下はTSV形式のアヤメの花のデータセットの記録です。タブは印刷可能な文字ではない(表示されない)ため、ここではタブ文字を示すために矢印(→)を使用しています。
萼片の長さ→萼片の幅→花弁の長さ→花弁の幅→種5.1→3.5→1.4→0.2→I。セトサ4.9→3.0→1.4→0.2→I。セトサ4.7→3.2→1.3→0.2→I。セトサ4.6→3.1→1.5→0.2→I。セトサ5.0→3.6→1.4→0.2→I。セトサ
以下は同じデータをテーブルとしてレンダリングしたものです。
| 萼片の長さ | 萼片の幅 | 花びらの長さ | 花びらの幅 | 種 |
|---|---|---|---|---|
| 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のIANA メディアタイプ標準では、フィールド内でのタブの使用を禁止しています。同様に、値には行末文字を含めることはできません。[ 4 ]埋め込まれたタブ文字または行末文字を含む値を表すために一般的に使用されるメカニズムは、次の表に示すように、対応するエスケープシーケンスで文字を置き換えることです。[ 5 ] [ 6 ]
| 順序 | を表す |
|---|---|
\t | タブ |
\n | 改行 |
\r | キャリッジリターン |
\\ | バックスラッシュ |
CSV( RFC 4180 )から借用したもう1つの一般的な規則は、タブまたは行末文字を含む値を二重引用符で囲むことです。[ 7 ] [ 8 ]
行末記号
[編集]テキストファイルの場合と同様に、行末文字として使用される文字は様々です。Microsoftベースのシステムでは、通常はキャリッジリターン(CR)とラインフィード(LF)のシーケンスです。Unixベースのシステムでは、LFのみです。事実上の仕様[9]では「 EOL 」という用語が使用されていますが、これは行末文字や改行文字と同様に曖昧な用語です。ソフトウェアは、実行されるプラットフォームの行末文字を処理するように設計されるか、またはどちらかの行末文字を処理するように設計されることがよくあります。
参考文献
[編集]- ^ エディンバラ大学研究データサポートチーム「最適なファイル形式を選択する」。エディンバラ大学。§ 推奨形式。2023年5月23日閲覧。
- ^ a b "tabSeparatedText" . Apple開発者向けドキュメント: Uniform Type Identifiers . Apple Inc . 2023年5月23日閲覧。
- ^ 「タブ区切り値(TSV)ファイルの使用方法」国際通貨基金。 2023年2月1日閲覧。
- ^ リンドナー 1993 .
- ^ Dusek, Jason (2014年5月6日). 「Linear TSV: simple, line-oriented, tabular data」 . Data Protocols - Open Knowledge Foundation (v1.0β ed.). 2023年3月18日時点のオリジナルよりアーカイブ。 2020年5月6日閲覧。
- ^ Dolan, Stephen (2018年11月1日). 「jqマニュアル」 . jq . 2023年5月23日閲覧。
- ^ ミラー、ロブ(2015年9月22日)。『Rubyによるテキスト処理:身の回りのデータから価値を引き出す』Pragmatic Bookshelf、94ページ。ISBN 978-1-68050-492-7。
- ^ ジュゼッピーニ、ガブリエレ、バーネット、マーク(2005年2月10日)『Microsoft Log Parser Toolkit: Microsoftの未公開ログ解析ツールのための完全ツールキット』エルゼビア、311ページ。ISBN 978-0-08-048939-1。
- ^ 「IANA: テキスト/タブ区切り値」。
出典
[編集]- 「TSV — タブ区切り値」(2021年2月11日版)。米国議会図書館。fdd000533 。 2023年5月23日閲覧。
- Lindner, Paul (1993年6月). 「text/tab-separated-values」 [タブ区切り値(TSV)の定義]. Assigned Media Types Registry . IANA . ミネソタ州:ミネソタ大学 インターネットゴーファーチーム. 2023年5月23日閲覧。
- 「タブ区切り値(TSV)ファイルの使い方」。2007年1月12日時点のオリジナルよりアーカイブ。2017年3月5日閲覧。
さらに読む
[編集]- Jukka, Korpela (2000年9月1日). 「タブ区切り値(TSV):表形式データ交換フォーマット」(2005年2月12日版) . 2023年5月23日閲覧。
- Welinder, Morten (2012年12月19日). 「§14.2.3 — テキストファイル形式」 . Gnumericマニュアル(v1.12版). 2020年11月30日時点のオリジナルよりアーカイブ。 2023年5月23日閲覧。