standardizeMissing

Вставьте стандартные отсутствующие значения

Описание

пример

B = standardizeMissing(A,indicator) значения замен заданы в indicator со стандартными отсутствующими значениями в массиве или таблице.

Стандартные отсутствующие значения зависят от типа данных:

  • NaN для doubleединственный, и duration

  • NaT для datetime

  • <missing> для string

  • <undefined> для categorical

  • ' ' для char

  • {''} для cell из символьных массивов

пример

B = standardizeMissing(A,indicator,'DataVariables',datavars) стандартизирует отсутствующие значения в переменных, заданных datavars когда A таблица или расписание.

Примеры

свернуть все

Создайте вектор-строку и замените все экземпляры -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' представлять отсутствующие значения.

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>

Замените экземпляры Inf и 'N/A' появление в заданных переменных таблицы со стандартными индикаторами отсутствующего значения.

Составьте таблицу, содержащую Inf и 'N/A' представлять отсутствующие значения.

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

Inf в переменной y остается неизменным потому что y не включен в 'DataVariables' аргумент пары "имя-значение".

Входные параметры

свернуть все

Входные данные в виде вектора, матрицы, многомерного массива, таблицы или расписания. Если A расписание, затем ismissing работает с табличными данными только и игнорирует NaT и NaN значения в векторе времен строки.

Типы данных: double | single | char | string | cell | table | timetable | categorical | datetime | duration

Нестандартный индикатор отсутствующего значения в виде скаляра, вектора или массива ячеек. Элементы indicator задайте значения что standardizeMissing обработки как пропавшие без вести. Если A массив, затем indicator должен быть вектор. Если A таблица или расписание, затем indicator может также быть массив ячеек с записями нескольких типов данных.

Типы данных заданы в indicator совпадайте с типами данных в соответствующих записях A. Следующее является дополнительными соответствиями типа данных между элементами indicator и элементы A:

  • double индикаторы совпадают с doubleединственный, целое число и logical записи A.

  • string и char индикаторы совпадают с categorical записи A.

Пример: B = standardizeMissing(A,'N/A') заменяет вектор символов 'N/A' с пустым символьным вектором, ''.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | cell | datetime | duration

Табличные переменные, чтобы работать с в виде одной из опций в этой таблице. datavars указывает который переменные входной таблицы стандартизировать. Другие переменные в таблице, не заданной datavars передайте до выхода без управления.

ОпцияОписаниеПримеры
Имя переменной

Вектор символов или скалярная строка, задающая одно имя табличной переменной

'Var1'

"Var1"

Вектор из имен переменных

Массив ячеек из символьных векторов или массив строк, где каждым элементом является имя табличной переменной

{'Var1' 'Var2'}

["Var1" "Var2"]

Скаляр или вектор из переменных индексов

Скаляр или вектор из индексов табличной переменной

1

[1 3 5]

Логический вектор

Логический вектор, элементы которого каждый соответствует табличной переменной, где true включает соответствующую переменную и false исключает его

[true false true]

Указатель на функцию

Указатель на функцию, который берет табличную переменную в качестве входа и возвращает логический скаляр

@isnumeric

vartype индекс

Табличный индекс, сгенерированный vartype функция

vartype('numeric')

Пример: standardizeMissing(T,indicator,'DataVariables',["Var1" "Var2" "Var4"])

Выходные аргументы

свернуть все

Стандартизированный массив или таблица в виде вектора, матрицы, многомерного массива, таблицы или расписания. B имеет тот же размер как A.

Алгоритмы

standardizeMissing обрабатывает начальный и конечный пробел по-другому для массивов ячеек из символьных векторов, символьных массивов и категориальных массивов.

  • Для массивов ячеек из символьных векторов, standardizeMissing не игнорирует пробел. Все векторы символов должны совпадать точно с вектором символов, заданным в indicator.

  • Для символьных массивов, standardizeMissing игнорирует конечный пробел.

  • Для категориальных массивов, standardizeMissing игнорирует начальный и конечный пробел.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Введенный в R2013b