Table (.dat)
- ImportとExportは表データ形式を完全にサポートし,種々のデータ変換とフォーマットオプションを提供する.
- ImportはCやFortran表記を含む一般的な数値形式を自動的に認識する.
- 小数点を含まない数は整数としてインポートされる.
予備知識

-
- 一般表データ.
- 表としてフォーマットされた数値・テキスト情報を保管する.
- ユーザ定義のフィールド・レコード分離,フィールド区切り,通貨トークン,数値形式をサポートする.
- テキスト形式.
ImportとExport

- Import["file.dat"] はファイルに保存されている行と列を表す文字列や数を含むリストのリストを返す.
- Import["file.dat",elem]はTableファイルから指定された要素をインポートする.
- Import["file.dat",{elem,subelem1,…}]はサブ要素 subelemiをインポートする.これは部分データのインポートに役に立つ.
- Import["file.dat",{{elem1,elem2,…}}]は複数の要素をインポートする.
- インポート形式はImport["file","Table"]またはImport["file",{"Table",elem,…}]で指定できる.
- Export["file.dat",expr]は exprからTableファイルを生成する.
- サポートする式 exprは以下を含む:
-
{v1,v2,…} 一列のデータ {{v11,v12,…},{v21,v22,…},…} 行のリストのデータ array SparseArray,QuantityArrayなどの配列 tseries TimeSeriesオブジェクト,EventSeriesオブジェクトまたはTemporalData オブジェクト Dataset[…] データ集合 Tabular[…] 表形式オブジェクト - 一般的な情報は,以下の関数ページを参照のこと.
-
Import, Export ファイルからインポートする,あるいはファイルへエキスポートする CloudImport, CloudExport クラウドオブジェクトからインポートする,あるいはクラウドオブジェクトへエキスポートする ImportString, ExportString 文字列からインポートする,あるいは文字列へエキスポートする ImportByteArray, ExportByteArray バイト配列からインポートする,あるいはバイト配列へエキスポートする
オプション



- ImportとExportのオプション:
-
"TextDelimiters" Automatic 非数値フィールドを区切るのに使われる文字列または文字列のリスト - デフォルトではExportはフィールド区切りを含むテキストフィールドをダブルクォート文字で区切る.
- "TextDelimiters"を明示的に設定すると,Exportはテキストフィールドを区切るのに常に指定の文字列トークンを使用し,事実上は区切り文字のリストを巡回する.
- "TextDelimiters"->{"<",">"}とすると,Exportはテキストフィールドを<>で囲む.
- テキストフィールドを区切るダブルクォート文字は,デフォルトではインポートされない.
- Importオプション
-
CharacterEncoding "ISOLatin1" ファイルで使用される生の文字コード "CurrencyTokens" {{"$", " ", "
", "
"}, {"c", "
", "p", "F"}}
数値的な値をインポートする際に省略する通貨単位 "DateStringFormat" None DateString指定で与えられる日付の書式 "FieldSeparators" {" ","∖t"} 列を区切る文字列トークン "HeaderLines" 0 ファイルの最初の省略する行数 "IgnoreEmptyLines" False 空白行を無視するかどうか "LineSeparators" {"∖r\n","∖n","\r"} 行を区切る文字列トークン "NumberPoint" "." 小数点文字列 "NumberSigns" {"-","+"} 正および負の数の符号に使われる文字列 "Numeric" True 可能な場合にデータフィールドを数としてインポートするかどうか "RepeatedSeparators" True フィールド区切りを単一の区切り文字として解釈するかどうか - CharacterEncoding -> Automaticとすると,Importはファイルの文字コードの推測を試みる.
- Importは"DateStringFormat"オプションの指定に従ってフォーマットされた表の項目を,{y,m,d,h,m,s}という形式のDateObject表現に変換する.
- 空白行や空白文字のみが含まれる行は,デフォルトでは空白のリストに変換される."IgnoreEmptyLines"をTrueに設定すると,Importは空白行を省略する.
- "Numeric"->Falseとすると,文字列はファイルにある形式でインポートされる.
- "LineSeparators"のデフォルトの設定では,Importは行区切り文字コードの一般的な慣習をすべて自動的に認識する.
- Exportオプション:
-
Alignment None 表の列内にデータをどのように整列させるか CharacterEncoding "UTF8" ファイルで使用される生の文字コード "FieldSeparators" "\t" 列を区切るのに使われる文字列トークン "TableHeadings" None 表の列と行の見出し - Alignmentに使用できる設定は,None,Left,Center,Rightである.
- "TableHeadings"は以下の値に設定できる:
-
None ラベルなし Automatic 列と行に連続した整数ラベルを与える {"col1","col2",…} 列ラベルのリスト {rhead,chead} 行と列の区切りラベルを指定する - ExportはWolfram言語が実行されているコンピュータシステムの慣習に従って行区切り文字を符号化する.
例題
すべて開くすべて閉じるスコープ (8)
Import (3)
縦線をフィールド区切り文字に使用している表データファイルをインポートする:
日付形式が指定されている場合,Importは日付をWolfram言語のDateObject指定に変換する:
Export (5)
UTF-8符号化の通貨トークンを含むテキストファイルを作成する:
このファイルをインポートするとき,通貨トークンは自動的に省略される:
Wolfram言語はTable形式のエキスポートの際,自動的に式をリストのリストに変換する:
Table形式のエキスポートでは,Real値にCFormを使う:
ExportStringを使って,フォーマットされた配列を生成する:
Import要素 (5)
Importオプション (11)
CharacterEncoding (1)
文字コードは $CharacterEncodingsから任意の値を設定できる:
"DateStringFormat" (1)
日付形式を指定して,日付をDateObject に変換する:
"Numeric" (1)
デフォルトでは,Importは数を解釈する:
Exportオプション (4)
CharacterEncoding (1)
文字コードは$CharacterEncodingsから任意の値を設定することができる: