exponenta event banner

cell2dataset

(Не рекомендуется) Преобразовать массив ячеек в массив наборов данных

dataset тип данных не рекомендуется. Для работы с разнородными данными используйте MATLAB ®table вместо этого тип данных. См. MATLAB table для получения дополнительной информации.

Описание

пример

ds = cell2dataset(C) преобразует массив ячеек в dataset массив.

пример

ds = cell2dataset(C,Name,Value) выполняет преобразование с использованием дополнительных параметров, заданных одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

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

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

C = {'Name','Gender','SystolicBP','DiastolicBP';
     'CLARK','M',124,93;
     'BROWN','F',122,80;
     'MARTIN','M',130,92}
C=4×4 cell array
    {'Name'  }    {'Gender'}    {'SystolicBP'}    {'DiastolicBP'}
    {'CLARK' }    {'M'     }    {[       124]}    {[         93]}
    {'BROWN' }    {'F'     }    {[       122]}    {[         80]}
    {'MARTIN'}    {'M'     }    {[       130]}    {[         92]}

Преобразование массива ячеек в массив набора данных.

ds = cell2dataset(C)
ds = 
    Name              Gender       SystolicBP    DiastolicBP
    {'CLARK' }        {'M'}        124           93         
    {'BROWN' }        {'F'}        122           80         
    {'MARTIN'}        {'M'}        130           92         

Первая строка C стать именами переменных в массиве выходных наборов данных, ds.

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

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

C = {'Name','Gender','SystolicBP','DiastolicBP';
     'CLARK','M',124,93;
     'BROWN','F',122,80;
     'MARTIN','M',130,92}
C=4×4 cell array
    {'Name'  }    {'Gender'}    {'SystolicBP'}    {'DiastolicBP'}
    {'CLARK' }    {'M'     }    {[       124]}    {[         93]}
    {'BROWN' }    {'F'     }    {[       122]}    {[         80]}
    {'MARTIN'}    {'M'     }    {[       130]}    {[         92]}

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

ds = cell2dataset(C,'NumCols',[1,1,2]);
ds.Properties.VarNames{3} = 'BloodPressure';
ds
ds = 
    Name              Gender       BloodPressure  
    {'CLARK' }        {'M'}        124          93
    {'BROWN' }        {'F'}        122          80
    {'MARTIN'}        {'M'}        130          92

Массив выходного набора данных состоит из трех наблюдений и трех переменных.

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

свернуть все

Входной массив ячеек для преобразования в массив наборов данных, заданный как массив ячеек M-by-N. Каждый столбец C становится переменной в массиве выходного набора данных, ds. По умолчанию cell2dataset предполагает, что первая строка C содержит имена переменных.

Типы данных: cell | string

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

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'ReadVarNames',false,'ReadObsNames',true указывает, что первая строка массива ячеек не содержит имен переменных, а первый столбец содержит имена наблюдений.

Индикатор того, следует ли считывать имена переменных из первой строки массива входных ячеек, указанного как разделенная запятыми пара, состоящая из 'ReadVarNames' и либо true или false. Значение по умолчанию: true, если имена переменных не указаны с помощью аргумента пары имя-значение VarNames. Когда ReadVarNames является false, cell2dataset создает имена переменных по умолчанию, если они не указаны.

Пример: 'ReadVarNames',false

Имена переменных для массива выходного набора данных, указанного как пара, разделенная запятыми, состоящая из 'VarNames' и строковый массив или массив ячеек символьных векторов. Необходимо указать имя переменной для каждой переменной в ds. Имена должны быть допустимыми идентификаторами MATLAB и уникальными.

Пример: 'VarNames',{'myVar1','myVar2','myVar3'}

Индикатор того, следует ли считывать имена наблюдений из массива входных ячеек, указанного как пара, разделенная запятыми, состоящая из 'ReadObsNames' и либо true или false. Когда ReadObsNames имеет значение true, cell2dataset создает имена наблюдений в ds с использованием первого столбца C, и наборы ds.Properties.DimNames равно {C{1,1},'Variables'}.

Пример: 'ReadObsNames',true

Имена наблюдений для массива выходного набора данных, указанного как пара, разделенная запятыми, состоящая из 'ObsNames' и строковый массив или массив ячеек символьных векторов. Имена не обязательно должны быть допустимыми идентификаторами MATLAB, но они должны быть уникальными.

Количество столбцов для каждой переменной в ds, указанная как пара, разделенная запятыми, состоящая из 'NumCols' и вектор неотрицательных целых чисел. Если число столбцов переменной больше единицы, cell2dataset объединяет несколько столбцов в C в одну переменную в ds. Вектор, которому назначается NumCols должно суммироваться с size(C,2), или size(C,1) из ReadObsNames равно true.

Например, чтобы преобразовать массив ячеек с восемью столбцами в массив наборов данных с пятью переменными, укажите вектор с пятью элементами, которые суммируют восемь, например, 'NumCols',[1,1,3,1,2].

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

свернуть все

Массив выходных наборов данных, возвращаемый по умолчанию с переменной для каждого столбца C, наблюдение для каждой строки C (за исключением первой строки) и имена переменных, соответствующие первой строке C.

  • Если установить ReadVarNames равно false (или указать VarNames), то есть наблюдение в ds для каждой строки C, и cell2dataset создает имена переменных по умолчанию (или использует имена в VarNames).

  • Если установить ReadObsNames равно true, то cell2dataset использует первый столбец C в качестве названий наблюдений.

  • При указании NumCols, то количество переменных в ds равна длине указанного вектора номеров столбцов.

Представлен в R2012b