このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
standardizeMissing
標準の欠損値を挿入
説明
は、1 つ以上の名前と値の引数を使用して、欠損値を標準化するための追加パラメーターを指定します。たとえば B
= standardizeMissing(___,Name,Value
)standardizeMissing(A,indicator,'DataVariables',datavars)
は、A
が table または timetable である場合、datavars
で指定された変数の欠損値を標準化します。
例
非標準の欠損数値
行ベクトルを作成し、-99
のすべてのインスタンスを double
データ型の標準の欠損値 NaN
に置き換えます。
A = [0 1 5 -99 8 3 4 -99 16]; B = standardizeMissing(A,-99)
B = 1×9
0 1 5 NaN 8 3 4 NaN 16
指定された値のすべてのインスタンスの置き換え
欠損値を表す Inf
および 'N/A'
を含む table を作成します。
dblVar = [NaN;3;Inf;7;9]; cellstrVar = {'one';'three';'';'N/A';'nine'}; charVar = ['A';'C';'E';' ';'I']; categoryVar = categorical({'red';'yellow';'blue';'violet';''}); A = table(dblVar,cellstrVar,charVar,categoryVar)
A=5×4 table
dblVar cellstrVar charVar categoryVar
______ __________ _______ ___________
NaN {'one' } A red
3 {'three' } C yellow
Inf {0x0 char} E blue
7 {'N/A' } violet
9 {'nine' } I <undefined>
Inf
のすべてのインスタンスを NaN
に置き換え、'N/A'
のすべてのインスタンスを空の文字ベクトル ''
に置き換えます。
B = standardizeMissing(A,{Inf,'N/A'})
B=5×4 table
dblVar cellstrVar charVar categoryVar
______ __________ _______ ___________
NaN {'one' } A red
3 {'three' } C yellow
NaN {0x0 char} E blue
7 {0x0 char} violet
9 {'nine' } I <undefined>
指定された変数の値のみの置き換え
table の指定された変数で発生する Inf
および 'N/A'
のインスタンスを標準の欠損値インジケーターに置き換えます。
欠損値を表す Inf
および 'N/A'
を含む table を作成します。
a = {'alpha';'bravo';'charlie';'';'N/A'}; x = [1;NaN;3;Inf;5]; y = [57;732;93;1398;Inf]; A = table(a,x,y)
A=5×3 table
a x y
___________ ___ ____
{'alpha' } 1 57
{'bravo' } NaN 732
{'charlie'} 3 93
{0x0 char } Inf 1398
{'N/A' } 5 Inf
変数 a
および変数 x
については、Inf
のインスタンスを NaN
に置き換え、'N/A'
のインスタンスを空の文字ベクトル ''
に置き換えます。
B = standardizeMissing(A,{Inf,'N/A'},'DataVariables',{'a','x'})
B=5×3 table
a x y
___________ ___ ____
{'alpha' } 1 57
{'bravo' } NaN 732
{'charlie'} 3 93
{0x0 char } NaN 1398
{0x0 char } 5 Inf
変数 y
の Inf
は変更されません。これは、y
が名前と値の引数 DataVariables
に含まれていないからです。
入力引数
A
— 入力データ
ベクトル | 行列 | 多次元配列 | table | timetable
入力データ。ベクトル、行列、多次元配列、table または timetable として指定します。A
が timetable の場合、standardizeMissing
は table データに対してのみ操作を実行し、行時間のベクトルにある NaT
値と NaN
値を無視します。
データ型: double
| single
| char
| string
| cell
| table
| timetable
| categorical
| datetime
| duration
indicator
— 非標準の欠損値インジケーター
スカラー | ベクトル | cell 配列
非標準の欠損値インジケーター。スカラー、ベクトル、または cell 配列として指定します。indicator
の要素は、standardizeMissing
が欠損値として扱う値を定義します。A
が配列の場合、indicator
はベクトルでなければなりません。A
が table または timetable の場合、indicator
は複数のデータ型のエントリをもつ cell 配列にすることもできます。
indicator
で指定されたデータ型は、A
の対応するエントリ内のデータ型と一致します。以下は indicator
の要素と A
の要素間で一致する追加のデータ型です。
double
インジケーターは、A
のdouble
、single
、整数およびlogical
のエントリに一致します。string
およびchar
インジケーターは、A
のcategorical
エントリと一致します。
例: B = standardizeMissing(A,'N/A')
は、文字ベクトル 'N/A'
を空の文字ベクトル ''
に置き換えます。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| cell
| datetime
| duration
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: standardizeMissing(T,indicator,'ReplaceValues',false)
DataVariables
— 演算の対象とする table 変数
table 変数名 | スカラー | ベクトル | cell 配列 | 関数ハンドル | table vartype
添字
演算の対象とする table 変数。次の表のオプションのいずれかとして指定します。DataVariables
の値は、入力 table 内のどの変数を埋めるかを示します。
DataVariables
で指定されていない table 内の他の変数は、標準化されずに出力に渡されます。
オプション | 説明 | 例 |
---|---|---|
変数名 | 単一の table 変数名を指定する文字ベクトルまたは string スカラー |
|
変数名のベクトル | 各要素が table 変数名である、文字ベクトルの cell 配列または string 配列 |
|
変数インデックスのスカラーまたはベクトル | table 変数インデックスのスカラーまたはベクトル |
|
logical ベクトル | 各要素が table 変数に対応する logical ベクトル。 |
|
関数ハンドル | 入力として table 変数をとり、logical スカラーを返す関数ハンドル |
|
vartype 添字 | 関数 |
|
例: standardizeMissing(T,indicator,'DataVariables',["Var1" "Var2" "Var4"])
ReplaceValues
— 値置換インジケーター
true
または 1
(既定値) | false
または 0
値置換インジケーター。A
が table または timetable の場合に、次の値のいずれかとして指定します。
true
または1
— 欠損エントリを含む入力 table 変数を、標準化された table 変数に置き換えます。false
または0
— 欠損エントリをチェック済みのすべての table 変数を含む入力 table を追加します。追加される変数の欠損エントリは標準化されます。
入力データがベクトル、行列、または多次元配列の場合、ReplaceValues
はサポートされません。
B
は、ReplaceValues
の値が false
の場合を除き、A
と同じサイズになります。ReplaceValues
の値が false
の場合、B
の幅は入力データの幅と指定したデータ変数の数の合計となります。
例: standardizeMissing(T,indicator,'ReplaceValues',false)
アルゴリズム
standardizeMissing
は、文字ベクトルの cell 配列、文字配列および categorical 配列の先頭と末尾の空白を異なる方法で処理します。
文字ベクトルの cell 配列の場合、
standardizeMissing
は空白を無視しません。すべての文字ベクトルは、indicator
に指定された文字ベクトルに厳密に一致していなければなりません。文字配列の場合、
standardizeMissing
は、末尾の空白を無視します。categorical 配列の場合、
standardizeMissing
は、先頭と末尾の空白を無視します。
拡張機能
tall 配列
メモリの許容量を超えるような多数の行を含む配列を計算します。
この関数は tall 配列を完全にサポートしています。詳細については、tall 配列を参照してください。
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意事項および制限事項:
名前と値の引数
ReplaceValues
はサポートされていません。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
分散配列
Parallel Computing Toolbox™ を使用して、クラスターの結合メモリ上で大きなアレイを分割します。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2013b で導入R2022b: 標準欠損値がない文字配列
文字配列には、標準欠損値の既定の定義がありません。このため、standardizeMissing
は文字配列の値を置き換えません。たとえば、standardizeMissing(['ab'; 'NA'],'NA')
は logical 配列 ['ab'; 'NA']
を返します。以前は、['ab'; ' ']
を返していました。
R2022a: 標準化された値の追加
欠損エントリがチェック済みである、すべての table 変数を含む入力 table を追加できるようになりました。追加される変数の欠損エントリは標準化されます。名前と値の引数 ReplaceValues
を false
に設定することにより、table 変数を置き換えるのではなく追加します。
名前と値の引数 ReplaceValues
は table および timetable 入力データでのみサポートされます。
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)