standardizeMissing

Вставка стандартных отсутствующих значений

Описание

пример

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

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

  • NaN для double, single, и 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' аргумент пары "имя-значение".

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

свернуть все

Входные данные, заданные как вектор, матрица, многомерный массив, таблица или timetable. Если 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

Табличные переменные для работы, заданные как один из опций в этой таблице. 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"])

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

свернуть все

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

Алгоритмы

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

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

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

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

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

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

.
Введенный в R2013b