Table (.dat)
- ImportとExportは表データ形式を完全にサポートし,種々のデータ変換とフォーマットオプションを提供する.
- ImportはCやFortran表記を含む一般的な数値形式を自動的に認識する.
- 小数点を含まない数は整数としてインポートされる.
予備知識
-
- 一般表データ.
- 表としてフォーマットされた数値・テキスト情報を保管する.
- ユーザ定義のフィールド・レコード分離,フィールド区切り,通貨トークン,数値形式をサポートする.
- テキスト形式.
ImportとExport
- Import["file.dat"]は表データファイルをインポートし,リストのリストを返す.
- Export["file.dat",expr]は2次元配列かGridをTableファイルにエキスポートする.
- Import["file.dat"]は,ファイルに保管された行と列を表す,文字列と数の2次元配列を返す.
- Export["file.dat",array]は各要素のCFormを使って,行と列としてarray をフォーマットする.
- Wolfram言語は"Table"形式へのエキスポートの際,任意の式をリストのリストに自動的に変換する.
- Import["file.dat",elem]はTableファイルから指定された要素をインポートする.
- Import["file.dat",{elem,suba,subb,…}]はサブ要素をインポートする.
- Import["file.dat",{{elem1,elem2,…}}]は複数の要素をインポートする.
- インポート形式はImport["file","Table"]またはImport["file",{"Table",elem,…}]で指定できる.
- Export["file.dat",expr,elem]はexpr が要素elem を指定してるとしてTableファイルを作成する.
- Export["file.dat",{expr1,expr2,…},{{elem1,elem2,…}}]は各expri が対応するelemi を指定しているとして扱う.
- Export["file.dat",expr,opt1->val1,…]は指定の値を持つ指定のオプション要素でexpr をエキスポートする.
- Export["file.dat",{elem1->expr1,elem2->expr2,…},"Rules"]は規則を使ってエキスポートする要素を指定する.
- 一般的な情報は,以下の関数ページを参照のこと.
-
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言語が実行されているコンピュータシステムの慣習に従って行区切り文字を符号化する.
例題
例 (5)
ExportStringを使ってフォーマットされた配列を作成する:
縦線をフィールド区切り文字に使用している表データファイルをインポートする:
日付形式が指定されているなら,Importは日付をWolfram言語のDateObject指定に変換する:
UTF-8符号化の通貨トークンを含むテキストファイルを作成する: