tabularTextDatastore
表形式テキスト ファイルのデータストア
説明
列方向のデータや表形式データを含むテキスト ファイルの大規模な集合 (必ずしもメモリに収まるとは限らない) を管理するには、TabularTextDatastore
オブジェクトを使用します。表形式データとは、各行に同数のエントリをもつ四角形の表として配置されたデータです。関数 tabularTextDatastore
を使用して TabularTextDatastore
オブジェクトを作成し、そのプロパティを指定すると、オブジェクト関数を使用してデータのインポートおよび処理ができます。
作成
説明
は、ttds
= tabularTextDatastore(location
)location
で指定されたデータの集合からデータストアを作成します。
は、1 つ以上の名前と値のペアの引数を使用して、ttds
= tabularTextDatastore(location
,Name,Value
)ttds
の追加パラメーターとプロパティを指定します。たとえば、tabularTextDatastore(location,"FileExtensions",[".txt",".csv"])
は、拡張子が .txt
と .csv
である location
内のファイルのみからデータストアを作成します。
入力引数
location
— データストアに含めるファイルまたはフォルダー
FileSet
オブジェクト | ファイル パス | DsFileSet
オブジェクト
データストアに含めるファイルまたはフォルダー。FileSet
オブジェクト、ファイル パス、または DsFileSet
オブジェクトとして指定します。
FileSet
オブジェクト —location
をFileSet
オブジェクトとして指定できます。場所をFileSet
オブジェクトとして指定すると、パスまたはDsFileSet
オブジェクトを指定した場合に比べ、データストアの構築時間が短くなります。詳細については、matlab.io.datastore.FileSet
を参照してください。ファイル パス — 単一のファイル パスを文字ベクトルまたは string スカラーとして指定できます。複数のファイル パスは文字ベクトルの cell 配列または string 配列として指定できます。
DsFileSet
オブジェクト —DsFileSet
オブジェクトを指定できます。詳細については、matlab.io.datastore.DsFileSet
を参照してください。
ファイルまたはフォルダーはローカルでもリモートでもかまいません。
ローカルのファイルまたはフォルダー — ファイルまたはフォルダーのローカル パスを指定します。現在のフォルダー以外のファイルの場合は、絶対パスまたは相対パスを指定します。指定したフォルダーのサブフォルダー内にあるファイルは、自動ではデータストアに含まれません。ローカル パスを指定するときにワイルドカード文字 (*) を使用できます。この文字は、一致するフォルダー内にある、すべてのファイルまたは一致するすべてのファイルをデータストアに含めることを指定します。
リモートのファイルまたはフォルダー —
hdfs:///
の形式の Uniform Resource Locator (URL) として、リモートのファイルまたはフォルダーの絶対パスを指定します。詳細については、リモート データの操作を参照してください。path_to_file
フォルダーを指定する場合、データストアにはサポートされているファイル形式のファイルのみが含まれ、その他の形式のファイルは無視されます。データストアに含めるファイル拡張子のカスタム リストを指定するには、FileExtensions
プロパティを参照してください。
関数 tabularTextDatastore
は、.txt
、.csv
、.dat
、.dlm
、.asc
、および .text
の各拡張子のファイルと拡張子なしのファイルをサポートしています。
例: "file1.csv"
例: "../dir/data/file1"
例: ["C:\dir\data\file1.csv","C:\dir\data\file2.dat"]
例: "C:\dir\data\*.text"
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: ttds = tabularTextDatastore("C:\dir\textdata","FileExtensions",[".csv",".txt"])
FileExtensions
— テキスト ファイルの拡張子
文字ベクトル | 文字ベクトルの cell 配列 | string スカラー | string 配列
テキスト ファイルの拡張子。"FileExtensions"
と、文字ベクトル、文字ベクトルの cell 配列、string スカラーまたは string 配列で構成されるコンマ区切りのペアとして指定します。指定する拡張子は、サポートされる形式でなくても構いません。サポートされていない拡張子を含める場合は、すべての拡張子を指定してください。空の引用符 ""
を使用して、拡張子なしでファイルを表すことができます。
例: "FileExtensions",".txt"
例: "FileExtensions",[".text",".csv"]
データ型: char
| cell
| string
IncludeSubfolders
— サブフォルダーを含めるかどうかのフラグ
true
または false
| 0 または 1
サブフォルダーを含めるかどうかのフラグ。"IncludeSubfolders"
と、true
、false
、0、1 のいずれかで構成される名前と値の引数として指定します。各フォルダー内のすべてのファイルとサブフォルダーを含めるには true
を指定し、各フォルダー内のファイルのみを含めるには false
を指定します。
"IncludeSubfolders"
を指定しない場合、既定値は false
です。
例: "IncludeSubfolders",true
データ型: logical
| double
AlternateFileSystemRoots
— 代替ファイル システムのルート パス
string ベクトル | cell 配列
代替ファイル システムのルート パス。"AlternateFileSystemRoots"
と string ベクトルまたは cell 配列で構成される名前と値の引数として指定します。ローカル マシン上にデータストアを作成するが、別のマシン (異なるオペレーティング システムの可能性がある) 上でデータにアクセスして処理する必要がある場合は、"AlternateFileSystemRoots"
を使用します。また、Parallel Computing Toolbox™ と MATLAB® Parallel Server™ を使用してデータを処理し、そのデータがローカル マシンに保存され、そのデータのコピーが異なるプラットフォームのクラウドやクラスター マシンにある場合、"AlternateFileSystemRoots"
を使用してルート パスを関連付けなければなりません。
相互に対応する 1 組のルート パスを関連付けるには、
"AlternateFileSystemRoots"
を string ベクトルとして指定します。以下に例を示します。["Z:\datasets","/mynetwork/datasets"]
データストアに対応する複数の組のルート パスを関連付けるには、複数行を含む cell 配列として
"AlternateFileSystemRoots"
を指定します。各行は対応するルート パスの組を表します。cell 配列内の各行を string ベクトル、または文字ベクトルの cell 配列のいずれかとして指定します。以下に例を示します。"AlternateFileSystemRoots"
を string ベクトルの cell 配列として指定します。{["Z:\datasets", "/mynetwork/datasets"];... ["Y:\datasets", "/mynetwork2/datasets","S:\datasets"]}
あるいは、
"AlternateFileSystemRoots"
を文字ベクトルの cell 配列からなる cell 配列として指定します。{{'Z:\datasets','/mynetwork/datasets'};... {'Y:\datasets', '/mynetwork2/datasets','S:\datasets'}}
"AlternateFileSystemRoots"
の値は、次の条件を満たさなければなりません。
1 行以上の行を含み、各行は 1 組の対応するルート パスを指定する。
各行は複数のルート パスを指定し、各ルート パスは 2 文字以上を含まなければならない。
ルート パスは一意で、他のルート パスのサブフォルダーではない。
ファイルの場所を指す 1 つ以上のルート パス エントリを含む。
詳細については、異なるマシンまたはクラスターで処理するためのデータ ストアの設定を参照してください。
例: ["Z:\datasets","/mynetwork/datasets"]
データ型: string
| cell
TextType
— テキスト変数の出力データ型
"char"
(既定値) | "string"
テキスト変数の出力データ型。"TextType"
と "char"
または "string"
のいずれかで構成されるコンマ区切りのペアとして指定します。関数 read
、readall
または preview
の出力 table にテキスト変数が含まれる場合、"TextType"
は TabularTextDatastore
でのそれらの変数のデータ型を指定します。"TextType"
が "char"
の場合、出力は文字ベクトルの cell 配列です。"TextType"
が "string"
の場合、出力の型は string
です。
データ型: char
| string
DatetimeType
— インポートされる日付と時刻のデータの型
"datetime"
(既定値) | "text"
インポートされる日付と時刻のデータの型。"DatetimeType"
と、"datetime"
または "text"
のいずれかの値で構成されるコンマ区切りのペアとして指定します。
値 | インポートされる日付と時刻のデータの型 |
---|---|
"datetime" | MATLAB の 詳細については、 |
"text" |
|
指定した TextscanFormats
プロパティに %D
が含まれる場合、tabularTextdatastore
は DatetimeType
で指定された値を無視します。
例: "DatetimeType","datetime"
データ型: char
| string
DurationType
— duration データの出力データ型
"duration"
(既定値) | "text"
duration データの出力データ型。"DurationType"
と "duration"
または "text"
のいずれかで構成される名前と値の引数として指定します。
値 | インポートされる duration データの型 |
---|---|
"duration" | MATLAB の 詳細については、 |
"text" |
|
データ型: char
| string
DatetimeLocale
— 日付を解釈するロケール。
"en_US"
(既定値) | 文字ベクトル | string スカラー
日付を解釈するためのロケール。文字ベクトルまたは string スカラーとして指定します。DatetimeLocale
値は、インポート関数が日付と時刻を表すテキストを解釈する方法を決定します。
DatetimeLocale
を指定する場合、
の形式を使用します。ここで xx
_YY
xx
は ISO 639-1 で定義された小文字 2 文字の言語コードで、YY
は ISO 3166-1 alpha-2 で定義された大文字の国コードです。
次の表に一般的なロケールの値を示します。
ロケール | 言語 | 国 |
---|---|---|
"de_DE" | ドイツ語 | ドイツ |
"en_GB" | 英語 | 英国 |
"en_US" | 英語 | 米国 |
"es_ES" | スペイン語 | スペイン |
"fr_FR" | フランス語 | フランス |
"it_IT" | イタリア語 | イタリア |
"ja_JP" | 日本語 | 日本 |
"ko_KR" | 韓国語 | 韓国 |
"nl_NL" | オランダ語 | オランダ |
"zh_CN" | 簡体字中国語 | 中国 |
メモ
Locale
値により、入力値の解釈方法が決まります。表示形式と言語は、[基本設定] ウィンドウの [日付と時刻の形式] セクションの [ロケール] オプションによって指定されます。既定の日付と時刻のロケールを変更する方法については、コマンド ウィンドウ基本設定の設定を参照してください。
データ型: char
| string
これらの名前と値のペアに加えて、このページのプロパティも名前と値のペアとして指定できます。ただし、Files
プロパティを除きます。
プロパティ
TabularTextDatastore
プロパティは、TabularTextDatastore
オブジェクトに関連付けられているファイルを記述します。具体的には、プロパティはファイル内のデータの形式を記述し、データストアからデータを読み取る方法を制御します。TabularTextDatastore
オブジェクトの作成時に、データストア関数は Files
プロパティ内の最初のファイルを使用して、そのプロパティの値を決定します。Files
プロパティを除いて、datastore オブジェクトの作成時に、名前と値のペアの引数を使用して TabularTextDatastore
プロパティの値を指定できます。オブジェクトの作成後にプロパティの表示または変更を行うには、ドット表記を使用します。
ds = tabularTextDatastore("airlinesmall.csv"); ds.TreatAsMissing = "NA"; ds.MissingValue = 0;
ファイル プロパティ
Files
— データストアに含まれるファイル
文字ベクトルの cell 配列 | string 配列
データストアに含まれるファイル。文字ベクトルの cell 配列または string 配列として解決されます。各文字ベクトルまたは string はファイルへの絶対パスです。関数 tabularTextDatastore
および関数 datastore
の location
引数がこれらのファイルを定義します。
Files
プロパティで最初に指定するファイルは、データストアのすべてのファイルに対する変数名と形式の情報を決定します。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
例: {"C:\dir\data\mydata1.csv";"C:\dir\data\mydata2.csv"}
データ型: cell
| string
FileEncoding
— ファイルのエンコード
"UTF-8"
(既定値) | "US-ASCII"
| "Macintosh"
| ...
ファイルのエンコード。次の値のいずれかのような文字ベクトルまたは string スカラーとして指定します。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
| |
|
| |
|
| |
| ||
|
データストア内の各ファイルがメモリに収まる場合、FileEncoding
は次の値のいずれかにすることもできます。
|
|
|
|
|
|
|
|
|
|
|
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
データ型: char
| string
ReadVariableNames
— 変数名の読み取り
true
| false
変数名の読み取り。logical true
または logical false
として指定します。
指定しない場合、関数
tabularTextDatastore
は変数名の有無を自動的に検出します。true
の場合、最初のファイルの最初の非ヘッダー行がそのデータの変数名を決定します。false
の場合、最初のファイルの最初の非ヘッダー行にそのデータの 1 行目が含まれます。データには既定の変数名がVar1
、Var2
などと順に割り当てられます。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
データ型: logical
VariableNamingRule
— 変数名を保持するかどうかのフラグ
"modify"
(既定値) | "preserve"
変数名を保持するかどうかのフラグ。"modify"
または "preserve"
として指定します。
"modify"
— 無効な変数名 (関数isvarname
で判定) を、有効な MATLAB 識別子に変換。"preserve"
— スペースや非 ASCII 文字を含む変数名など、有効な MATLAB 識別子ではない変数名を保持。
R2019b 以降、変数名と行名には、スペースや非 ASCII 文字など任意の文字を含めることができます。また、英字だけでなく任意の文字で始めることができます。変数名と行名は、有効な MATLAB 識別子 (関数 isvarname
で判定) である必要はありません。これらの変数名と行名を保持するには、VariableNamingRule
の値を "preserve"
に設定します。VariableNamingRule
の値を "modify"
から "preserve"
に変更すると、変数名が更新されなくなります。
データ型: char
| string
VariableNames
— 変数名
文字ベクトルの cell 配列 | string 配列
データストア内の変数名。文字ベクトルの cell 配列または string 配列として指定します。ファイルに表示される順序で変数名を指定します。変数名を指定しない場合は、データストアの最初のファイルの最初の非ヘッダー行から検出されます。VariableNames
プロパティを変更する場合、新しい変数名の数は、元の変数名の数と一致しなければなりません。
スペースおよび非 ASCII 文字を含む変数名など、無効な MATLAB 識別子を変数名としてサポートするには、VariableNamingRule
パラメーターの値を "preserve"
に設定します。
ReadVariableNames
が false
の場合、VariableNames
は既定値の {"Var1","Var2", ...}
になります。
例: {"Time","Name","Quantity"}
データ型: cell
| string
テキスト形式のプロパティ
NumHeaderLines
— スキップする行数
非負の整数
ファイルの先頭からスキップする行数。非負の整数として指定します。指定しない場合、関数 tabularTextDatastore
はスキップする行数を自動的に検出します。
関数 tabularTextDatastore
は、指定したヘッダーの行数を無視してから、変数名またはデータを読み取ります。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
データ型: double
Delimiter
— フィールドの区切り記号
文字ベクトル | 文字ベクトルの cell 配列 | string スカラー | string 配列
フィールドの区切り記号。文字ベクトル、文字ベクトルの cell 配列、string スカラーまたは string 配列として指定します。複数の区切り記号は、文字ベクトルの cell 配列または string 配列で指定します。指定しない場合、関数 tabularTextDatastore
は区切り記号を自動的に検出します。
例: "|"
例: {";","*"}
ファイル内で連続する区切り文字を、それらの間に空のフィールドをもつ個別の区切り記号として解釈します。指定しない場合、既定で読み取り関数が自動的に区切り記号を検出します。
次のエスケープ シーケンスの 1 つを区切り記号として指定した場合、そのシーケンスを対応する制御文字に変換します。
\b | バックスペース |
\n | 改行 |
\r | キャリッジ リターン |
\t | タブ |
\\ | バックスラッシュ (\ ) |
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
データ型: char
| cell
| string
RowDelimiter
— 行区切り記号文字
\r\n
(既定値) | 文字ベクトル | string スカラー
行区切り記号文字。文字ベクトルまたは string スカラーとして指定します。これは単一の文字か、"\r"
、"\n"
または "\r\n"
のいずれかでなければなりません。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
例: ":"
データ型: char
| string
TreatAsMissing
— 欠損値として処理するテキスト
""
(既定値) | 文字ベクトル | 文字ベクトルの cell 配列 | string スカラー | string 配列
欠損値として処理するテキスト。単一の文字ベクトル、文字ベクトルの cell 配列、string スカラーまたは string 配列として指定します。TreatAsMissing
として指定された値には、MissingValue
プロパティで定義された値が代入されます。たとえば、MissingValue
が NaN
として定義され、TreatAsMissing
が "NA"
として定義されたとします。その場合、インポートされたデータ内にあるすべての "NA"
が NaN
に置き換えられます。
このオプションは数値フィールドのみに適用されます。また、このプロパティは、関数 textscan
の名前と値のペア引数 TreatAsEmpty
と等価です。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
例: "NA"
例: {"-",""}
データ型: char
| cell
| string
MissingValue
— 欠損値フィールドの値
NaN
(既定値) | スカラー
区切りテキスト ファイル内の欠損値フィールドの値。スカラーとして指定します。このプロパティは、関数 textscan
の名前と値のペア引数 EmptyValue
と等価です。
データ型: double
高度なテキスト形式のプロパティ
TextscanFormats
— データ フィールドの形式
文字ベクトルの cell 配列 | string 配列
データ フィールドの形式。文字ベクトルの cell 配列または string 配列として指定します。各文字ベクトルまたは string は 1 つの変換指定子を含みます。
TextscanFormats
プロパティを指定または変更する場合、関数 textscan
が formatSpec
引数に対して受け入れるものと同じ変換指定子を使用できます。TextscanFormats
の有効値には、アスタリスク (*) 文字を使用してフィールドをスキップする変換指定子と、リテラル テキストをスキップする変換指定子が含まれます。変換指定子の数は、VariableNames
プロパティ内の変数の数と一致しなければなりません。
TextscanFormats
の値にアスタリスク文字 (*) を使用してフィールドをスキップする変換指定子が含まれる場合、SelectedVariableNames
プロパティの値は自動的に更新されます。MATLAB は%*q
変換指定子を使用してSelectedVariableNames
プロパティで省略されたフィールドをスキップし、フィールドの内容をリテラル文字ベクトルとして処理します。固定幅のファイルについては、適切な変換指定子をフィールド幅と共に使用してスキップするフィールドを指定します。たとえば、%*52c
は 52 文字を含むフィールドをスキップします。TextscanFormats
に値を指定しない場合、datastore
は、データストアにある最初のファイルの最初の非ヘッダー行からテキストをスキャンすることにより、データ フィールドの形式を決定します。R2020b 以降、
datastore
は、接頭辞付きリテラルを 16 進数およびバイナリ データとして検出します。以前は、datastore
は接頭辞付きリテラルをテキスト データとして検出していました。
例: {"%s","%s","%f"}
データ型: cell
| string
ExponentCharacters
— 指数文字
"eEdD"
(既定値) | 文字ベクトル | string スカラー
指数文字。文字ベクトルまたは string スカラーとして指定します。既定の指数文字は e
、E
、d
および D
です。
データ型: char
| string
CommentStyle
— コメント文字
""
(既定値) | 文字ベクトル | string スカラー | 2 要素配列
ファイル内のコメントを識別するために使用されるコメント文字。文字ベクトル、string スカラー、2 要素 string または cell 配列として指定します。
文字ベクトルまたは string スカラーを指定すると、同じ行の以降のテキストはすべてコメントと解釈されます。たとえば、
"CommentStyle","/*"
では、同じ行の/*
の後のすべてのテキストがコメントとして解釈されます。文字ベクトルを含む 2 要素 string ベクトルまたは 2 要素 cell 配列を指定すると、2 つの文字の間にあるすべてのテキストがコメントとして解釈されます。たとえば、
"CommentStyle",{"/*", "*/"}
では、"/*"
から"*/"
までのすべてのテキストがコメントとして解釈されます。
TabularTextDatastore
から読み取る場合、関数 read
は、各フィールドの先頭のみコメントをチェックします (フィールド内はコメント チェック対象外です)。
このプロパティ値を変更すると、関数 datastore
は TabularTextDatastore
のプロパティ値を再評価します。
例: "CommentStyle",{"/*", "*/"}
データ型: char
| cell
| string
Whitespace
— 空白文字
" \b\t"
(既定値) | 文字ベクトル | string スカラー
空白文字。1 文字以上の文字ベクトルまたは string スカラーとして指定します。
次のエスケープ シーケンスの 1 つを空白文字として指定した場合、関数 datastore
は、シーケンスを対応する制御文字に変換します。
\b | バックスペース |
\n | 改行 |
\r | キャリッジ リターン |
\t | タブ |
\\ | バックスラッシュ (\ ) |
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
例: " \b\t"
データ型: char
| string
MultipleDelimitersAsOne
— 複数の区切り記号の取り扱い
0 (false)
(既定値) | 1 (true)
複数の区切り記号の取り扱い。true
または false
のいずれかとして指定します。true
の場合、datastore
は連続した区切り記号を 1 つの区切り記号として扱います。区切り記号が空白で分けられて繰り返された場合も、1 つの区切り記号として扱われます。
このプロパティ値を変更すると、データストア関数は TabularTextDatastore
のプロパティ値を再評価します。
preview
、read
、readall
テーブルのプロパティ
SelectedVariableNames
— 読み取る変数
文字ベクトルの cell 配列 | string 配列
ファイルから読み取る変数。文字ベクトルの cell 配列または string 配列として指定します。各文字ベクトルまたは string は 1 つの変数の名前を含みます。変数名は任意の順序で指定できます。
スペースおよび非 ASCII 文字を含む変数名など、無効な MATLAB 識別子を変数名としてサポートするには、VariableNamingRule
パラメーターの値を "preserve"
に設定します。
例: ["Var3","Var7","Var4"]
データ型: cell
| string
SelectedFormats
— 選択した変数の形式
文字ベクトルの cell 配列 | string 配列
選択した読み取り対象の変数の形式。文字ベクトルの cell 配列または string 配列として指定します。各文字ベクトルまたは string は 1 つの変換指定子を含みます。読み取り対象の変数は、SelectedVariableNames
プロパティで指定されます。SelectedFormats
内の文字ベクトルまたは string の数は、読み取り対象の変数の数と一致しなければなりません。
関数 textscan
が受け入れた変換指定子と同じ指定子を使用できます。これにはリテラル テキストをスキップする指定子が含まれます。ただし、フィールドをスキップする変換指定子は使用できません。つまり、変換指定子にアスタリスク文字 (*) を含めることはできません。
例: ["%d","%d"]
データ型: cell
| string
ReadSize
— 読み取るデータの量
20000 (既定値) | 正のスカラー | "file"
関数 read
の 1 回の呼び出しで読み取るデータの量。正のスカラーまたは "file"
として指定します。
ReadSize
が正の整数の場合、read
へのそれぞれの呼び出しは最大でReadSize
の行数を読み取ります。ReadSize
が"file"
の場合、read
を呼び出すたびに、1 つのファイルにあるすべてのデータが読み取られます。
ReadSize
を数値スカラーから "file"
に変更したり、その逆の変更を行うと、MATLAB はデータストアをデータの読み取り前の状態にリセットします。
データ型: double
| char
| string
TextType
— テキスト変数の出力データ型
"char"
(既定値) | "string"
テキスト変数の出力データ型。"char"
または "string"
として指定します。TextType
は、%s
、%q
または [...]
で書式設定されたテキスト変数のデータ型を指定します。
TextType
が"char"
の場合、出力は文字ベクトルの cell 配列です。TextType
が"string"
の場合、出力の型はstring
です。
データ型: char
| string
RowTimes
— 行時間変数の名前
変数名 | 変数インデックス
行時間変数の名前。"RowTimes"
と変数名 ("Date"
など) または変数インデックス (3
など) で構成される名前と値の引数として指定します。
RowTimes
は timetable に関連するパラメーターです。timetable の各行は、timetable の時間ベクトルに記録されている時間に関連付けられます。RowTimes
内に指定される変数は、datetime
ベクトルまたは duration
ベクトルを含まなければなりません。
"OutputType"
の値が "timetable"
だが "RowTimes"
を指定しない場合、TabularTextDatastore
は、最初の datetime
変数または duration
変数を timetable の行時間として使用します。
writeall
で使用するプロパティ
Folders
— データストアの作成に使用するフォルダー
文字ベクトルの cell 配列
この プロパティ は読み取り専用です。
データストアの作成に使用するフォルダー。文字ベクトルの cell 配列として返されます。cell 配列は列ベクトルとして方向付けされます。各文字ベクトルは、データ ファイルを含むフォルダーへのパスです。関数 tabularTextDatastore
および関数 datastore
の location
引数は、データストアの作成時に Folders
を定義します。
TabularTextDatastore
オブジェクトの Files
プロパティを変更すると、Folders
プロパティがリセットされます。
データ型: cell
SupportedOutputFormats
— 書き込みでサポートされる形式
string 行ベクトル
この プロパティ は読み取り専用です。
書き込みでサポートされる形式。string の行ベクトルとして返されます。このプロパティは、writeall
を使用してデータストアから出力ファイルを書き込む際に使用可能な出力形式を指定します。
DefaultOutputFormat
— 既定の出力形式
string スカラー
この プロパティ は読み取り専用です。
既定の出力形式。string スカラーとして返されます。このプロパティは、writeall
を使用してデータストアから出力ファイルを書き込む際の既定の形式を指定します。
データ型: string
オブジェクト関数
hasdata | データが読み取り可能かどうかを判別 |
numpartitions | データストアの区画数 |
partition | データストアを分割する |
preview | データストア内のデータのサブセットをプレビュー |
read | データストアのデータの読み取り |
readall | データストアのすべてのデータの読み取り |
writeall | ファイルへのデータストアの書き込み |
reset | データストアの初期状態へのリセット |
transform | データストアの変換 |
combine | 複数のデータストアのデータを統合 |
isPartitionable | データストアが分割可能かどうかを判別 |
isSubsettable | Determine whether datastore is subsettable |
isShuffleable | データストアがシャッフル可能かどうかを判別 |
例
読み取る変数の選択
FileSet オブジェクトまたはファイル パスを使用して、サンプル ファイル airlinesmall.csv.
からデータストアを作成します。欠損値を扱う方法を指定します。対象の変数のみを選択します。
ファイル airlinesmall.csv
から FileSet オブジェクトを作成します。値が "NA"
の場合は欠損として扱い、欠損値を 0
として扱うデータストアを作成します。
fs = matlab.io.datastore.FileSet("airlinesmall.csv"); ds = tabularTextDatastore(fs,"TreatAsMissing","NA",... "MissingValue",0);
データストア内の変数を表示します。
ds.VariableNames
ans = 1x29 cell
{'Year'} {'Month'} {'DayofMonth'} {'DayOfWeek'} {'DepTime'} {'CRSDepTime'} {'ArrTime'} {'CRSArrTime'} {'UniqueCarrier'} {'FlightNum'} {'TailNum'} {'ActualElapsedTime'} {'CRSElapsedTime'} {'AirTime'} {'ArrDelay'} {'DepDelay'} {'Origin'} {'Dest'} {'Distance'} {'TaxiIn'} {'TaxiOut'} {'Cancelled'} {'CancellationCode'} {'Diverted'} {'CarrierDelay'} {'WeatherDelay'} {'NASDelay'} {'SecurityDelay'} {'LateAircraftDelay'}
SelectedVariableNames
プロパティを変更して対象の変数を指定します。
ds.SelectedVariableNames = ["Year","Month","Cancelled"];
あるいは、データの場所をファイル パスとして指定することもできます。
ds = tabularTextDatastore("airlinesmall.csv");
いずれかの場所の形式を使用して、対象の変数をデータストアの作成時に指定することもできます。
ds = tabularTextDatastore("airlinesmall.csv","TreatAsMissing","NA",... "MissingValue",0,"SelectedVariableNames",["Year","Month","Cancelled"]);
読み取るデータの書式の指定
表形式データが格納されたサンプル ファイル airlinesmall.csv
からデータストアを作成します。
ds = tabularTextDatastore("airlinesmall.csv","TreatAsMissing","NA",... "MissingValue",0);
対象の変数を指定します。
ds.SelectedVariableNames = ["Year","Month","UniqueCarrier"];
SelectedFormats
プロパティを表示します。
ds.SelectedFormats
ans = 1x3 cell
{'%f'} {'%f'} {'%q'}
SelectedFormats
プロパティは、関数 tabularTextDatastore
による変数の形式の解釈方法を指定します。変数 Year
および Month
は浮動小数点値の列として読み取られ、変数 UniqueCarrier
はテキストの列として読み取られます。
SelectedFormats
プロパティを変更して、最初の 2 つの変数を符号付き整数として読み取り、3 番目の変数を categorical 値として読み取ります。
ds.SelectedFormats = ["%d","%d","%C"];
データをプレビューします。
T = preview(ds)
T=8×3 table
Year Month UniqueCarrier
____ _____ _____________
1987 10 PS
1987 10 PS
1987 10 PS
1987 10 PS
1987 10 PS
1987 10 PS
1987 10 PS
1987 10 PS
表形式テキスト データストアから timetable を返す
OutputType
および RowTimes
の名前と値のペアを使用して、tabulartextDatastore
から table ではなく timetable が返されるようにします。
outages.csv
のデータストアを作成します。名前と値のペア "OutputType
" を "timetable
" として指定します。
ttds = tabularTextDatastore("outages.csv","OutputType","timetable"); preview(ttds)
ans=8×5 timetable
OutageTime Region Loss Customers RestorationTime Cause
________________ _____________ ______ __________ ________________ ___________________
2002-02-01 12:18 {'SouthWest'} 458.98 1.8202e+06 2002-02-07 16:50 {'winter storm' }
2003-01-23 00:49 {'SouthEast'} 530.14 2.1204e+05 NaT {'winter storm' }
2003-02-07 21:15 {'SouthEast'} 289.4 1.4294e+05 2003-02-17 08:14 {'winter storm' }
2004-04-06 05:44 {'West' } 434.81 3.4037e+05 2004-04-06 06:10 {'equipment fault'}
2002-03-16 06:18 {'MidWest' } 186.44 2.1275e+05 2002-03-18 23:23 {'severe storm' }
2003-06-18 02:49 {'West' } 0 0 2003-06-18 10:54 {'attack' }
2004-06-20 14:39 {'West' } 231.29 NaN 2004-06-20 19:16 {'equipment fault'}
2002-06-06 19:28 {'West' } 311.86 NaN 2002-06-07 00:51 {'equipment fault'}
'RowTimes'
を併せて指定しない場合、tabularTextDatastore
は、最初の datetime 変数または duration 変数を行時間として使用します。この場合は、変数 OutageTime
が行時間に使用されます。
'RowTimes'
オプションを指定して、停電時刻ではなく復旧時刻 (変数 RestorationTime
) を行時間として使用します。
ttds = tabularTextDatastore("outages.csv","OutputType","timetable","RowTimes","RestorationTime"); preview(ttds)
ans=8×5 timetable
RestorationTime Region OutageTime Loss Customers Cause
________________ _____________ ________________ ______ __________ ___________________
2002-02-07 16:50 {'SouthWest'} 2002-02-01 12:18 458.98 1.8202e+06 {'winter storm' }
NaT {'SouthEast'} 2003-01-23 00:49 530.14 2.1204e+05 {'winter storm' }
2003-02-17 08:14 {'SouthEast'} 2003-02-07 21:15 289.4 1.4294e+05 {'winter storm' }
2004-04-06 06:10 {'West' } 2004-04-06 05:44 434.81 3.4037e+05 {'equipment fault'}
2002-03-18 23:23 {'MidWest' } 2002-03-16 06:18 186.44 2.1275e+05 {'severe storm' }
2003-06-18 10:54 {'West' } 2003-06-18 02:49 0 0 {'attack' }
2004-06-20 19:16 {'West' } 2004-06-20 14:39 231.29 NaN {'equipment fault'}
2002-06-07 00:51 {'West' } 2002-06-06 19:28 311.86 NaN {'equipment fault'}
制限
en_US
ロケール以外の言語で日、月、またはタイム ゾーンの名前を含む datetime データはサポートされません。認識されない datetime 形式の場合は、TextscanFormats
パラメーターを使用して形式を指定します。
バージョン履歴
R2014b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)