rmmissing

Удалите недостающие записи

Синтаксис

R = rmmissing(A)
R = rmmissing(A,dim)
R = rmmissing(___,Name,Value)
[R,TF] = rmmissing(___)

Описание

пример

R = rmmissing(A) удаляет недостающие записи из массива или таблицы. Если A является вектором, то rmmissing удаляет любую запись, которая содержит недостающие данные. Если A является матрицей или таблицей, то rmmissing удаляет любую строку, которая содержит недостающие данные. Отсутствующие значения заданы согласно типу данных A:

  • NaN double, single, duration и calendarDuration

  • NAT datetime

  • <missing>строка

  • <undefined>категориальный

  • 'char'

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

пример

R = rmmissing(A,dim) задает размерность A, чтобы действовать вперед. По умолчанию rmmissing действует по первому измерению, размер которого не равняется 1.

пример

R = rmmissing(___,Name,Value) задает дополнительные параметры для удаления недостающих записей с помощью одного или нескольких аргументов в виде пар "имя-значение". Например, можно использовать rmmissing('MinNumMissing',n), чтобы удалить строки, которые содержат, по крайней мере, отсутствующие значения n.

пример

[R,TF] = rmmissing(___) также возвращает логический вектор, соответствующий строкам или столбцам A, которые были удалены.

Примеры

свернуть все

Создайте вектор со значениями NaN и удалите каждый NaN.

A = [1 3 NaN 6 NaN];
R = rmmissing(A)
R = 1×3

     1     3     6

Удалите неполные строки из таблицы с несколькими типами данных.

Во-первых, составьте таблицу, переменные которой включают categorical, double и типы данных char.

A = table(categorical({'';'F';'M'}),[45;32;NaN],{'';'CA';'MA'},[6051;7234;NaN],...
    'VariableNames',{'Gender' 'Age' 'State' 'ID'})
A=3×4 table
      Gender       Age    State     ID 
    ___________    ___    _____    ____

    <undefined>     45    ''       6051
    F               32    'CA'     7234
    M              NaN    'MA'      NaN

Удалите любую строку таблицы, которая содержит недостающие данные.

R = rmmissing(A)
R=1×4 table
    Gender    Age    State     ID 
    ______    ___    _____    ____

      F       32     'CA'     7234

Только удалите строки с отсутствующими значениями в табличных переменных ID или Age.

R = rmmissing(A,'DataVariables',{'Age','ID'})
R=2×4 table
      Gender       Age    State     ID 
    ___________    ___    _____    ____

    <undefined>    45     ''       6051
    F              32     'CA'     7234

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

R = rmmissing(A,'DataVariables',@isnumeric)
R=2×4 table
      Gender       Age    State     ID 
    ___________    ___    _____    ____

    <undefined>    45     ''       6051
    F              32     'CA'     7234

Создайте матрицу с недостающими данными и удалите любой столбец (второе измерение), содержащее два или больше отсутствующих значения. Возвратите новую матрицу и логический вектор - строку, который указывает, какие столбцы A были удалены.

A = [NaN NaN 5 3 NaN 5 7 NaN 9 2;
     8 9 NaN 1 4 5 6 5 NaN 5;
     NaN 4 9 8 7 2 4 1 NaN 3]
A = 3×10

   NaN   NaN     5     3   NaN     5     7   NaN     9     2
     8     9   NaN     1     4     5     6     5   NaN     5
   NaN     4     9     8     7     2     4     1   NaN     3

[R,TF] = rmmissing(A,2,'MinNumMissing',2)
R = 3×8

   NaN     5     3   NaN     5     7   NaN     2
     9   NaN     1     4     5     6     5     5
     4     9     8     7     2     4     1     3

TF = 1x10 logical array

   1   0   0   0   0   0   0   0   1   0

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

свернуть все

Входные данные, заданные как вектор, матрица, таблица или расписание. Если A является timetable, то rmmissing(A) удаляет любую строку A, содержащего недостающие данные, и также удаляет соответствующий элемент временного вектора. Если временной вектор содержит NaT или NaN, то rmmissing(A) удаляет его из временного вектора и также удаляет соответствующую строку A.

Типы данных: удвойтесь | единственный | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | char | строка | ячейка | таблица | расписание | категориальный | datetime | длительность | calendarDuration

Размерность, которая задает направление расчета, заданная как 1 или 2. По умолчанию rmmissing действует по первому измерению, размер которого не равняется 1.

Считайте двумерный входной массив A.

  • Если dim=1, то rmmissing удаляет строки A.

  • Если dim=2, то rmmissing удаляет столбцы A.

Типы данных: удвойтесь | единственный | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Имя должно появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: rmmissing (A, 'DataVariables', {'Температура', 'Высота'}) удаляет строки, которые содержат недостающие данные в переменных Температуры или Высоты

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

Пример: 'MinNumMissing', 6

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

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

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

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

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

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

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

Пример: 'Возраст'

Пример: {'Высота', 'Вес'}

Пример: iscategorical

Типы данных: char | ячейка | единственный | удваивается | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | function_handle

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

свернуть все

Данные с недостающими удаленными записями, возвратились как вектор, матрица, таблица или расписание. Размер R зависит от количества удаленных строк или столбцов.

Типы данных: удвойтесь | единственный | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | char | строка | ячейка | таблица | расписание | категориальный | datetime | длительность | calendarDuration

Удаленный индикатор записи, возвращенный как логический вектор. Значение 1 (true) соответствует строкам или столбцам в R, которые были удалены. Значение 0 (false) соответствует неизменным строкам и столбцам. Ориентация и размер TF зависят от A и размерности операции.

Типы данных: логический

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

Смотрите также

| | | |

Введенный в R2017b

Была ли эта тема полезной?