standardizeMissing

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

Синтаксис

B = standardizeMissing(A,indicator)
B = standardizeMissing(A,indicator,'DataVariables',vars)

Описание

пример

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

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

  • NaN для double, single, duration и calendarDuration

  • NaT для datetime

  • <missing> для string

  • <undefined> для categorical

  • ' ' для char

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

пример

B = standardizeMissing(A,indicator,'DataVariables',vars) стандартизирует отсутствующие значения в переменных, заданных vars, когда 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       ''              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       ''              E       blue       
       7       ''                      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
    ''           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
    ''           NaN    1398
    ''             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, single, целым числом и записями 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

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

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

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

  • Вектор индексов табличной переменной

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

  • Указатель на функцию, который возвращает логический скаляр, такой как @isnumeric

Пример: 'Age'

Пример: {'Height','Weight'}

Пример: @iscategorical

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

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

свернуть все

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

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

Алгоритмы

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

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

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

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

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

Введенный в R2013b

Для просмотра документации необходимо авторизоваться на сайте