cell2table

Преобразуйте массив ячеек в таблицу

Описание

T = cell2table(C) преобразует содержимое m- n массив ячеек, C, к m- n таблица, T. Каждый столбец C обеспечивает данные, содержавшиеся в переменной T.

Создать имена переменных в выходной таблице, cell2table добавляет номера столбцов к имени входного массива. Если входной массив не имеет никакого имени, то cell2table создает имена переменных формы 'Var1'..., 'VarN', где N количество столбцов в C.

пример

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

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

Примеры

свернуть все

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

C = {5 'cereal' 110 'C+'; 12 'pizza' 140 'B';...
    23 'salmon' 367 'A'; 2 'cookies' 160 'D'}
C=4×4 cell array
    {[ 5]}    {'cereal' }    {[110]}    {'C+'}
    {[12]}    {'pizza'  }    {[140]}    {'B' }
    {[23]}    {'salmon' }    {[367]}    {'A' }
    {[ 2]}    {'cookies'}    {[160]}    {'D' }

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

T = cell2table(C,...
    'VariableNames',{'Age' 'FavoriteFood' 'Calories' 'NutritionGrade'})
T=4×4 table
    Age    FavoriteFood    Calories    NutritionGrade
    ___    ____________    ________    ______________

     5     {'cereal' }       110           {'C+'}    
    12     {'pizza'  }       140           {'B' }    
    23     {'salmon' }       367           {'A' }    
     2     {'cookies'}       160           {'D' }    

Переменные T.Age и T.Calories являются числовыми в то время как переменные T.FavoriteFood и T.NutritionGrade массивы ячеек из символьных векторов.

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

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

Patients = {'Gender' 'Age' 'Height' 'Weight' 'Smoker';...
    'M' 38 71 176 true;...
    'M' 43 69 163 false;...
    'M' 38 64 131 false;...
    'F' 38 64 131 false;...
    'F' 40 67 133 false;...
    'F' 49 64 119 false}
Patients=7×5 cell array
    {'Gender'}    {'Age'}    {'Height'}    {'Weight'}    {'Smoker'}
    {'M'     }    {[ 38]}    {[    71]}    {[   176]}    {[     1]}
    {'M'     }    {[ 43]}    {[    69]}    {[   163]}    {[     0]}
    {'M'     }    {[ 38]}    {[    64]}    {[   131]}    {[     0]}
    {'F'     }    {[ 38]}    {[    64]}    {[   131]}    {[     0]}
    {'F'     }    {[ 40]}    {[    67]}    {[   133]}    {[     0]}
    {'F'     }    {[ 49]}    {[    64]}    {[   119]}    {[     0]}

Исключите заголовки столбцов и преобразуйте содержимое массива ячеек к таблице.

C = Patients(2:end,:);
T = cell2table(C)
T=6×5 table
     C1      C2    C3    C4      C5  
    _____    __    __    ___    _____

    {'M'}    38    71    176    true 
    {'M'}    43    69    163    false
    {'M'}    38    64    131    false
    {'F'}    38    64    131    false
    {'F'}    40    67    133    false
    {'F'}    49    64    119    false

Таблица, T, имеет имена переменных C1,...,C5.

Измените имена переменных путем установки свойства таблицы, T.Properties.VariableNames, к первой строке массива ячеек.

T.Properties.VariableNames = Patients(1,:)
T=6×5 table
    Gender    Age    Height    Weight    Smoker
    ______    ___    ______    ______    ______

    {'M'}     38       71       176      true  
    {'M'}     43       69       163      false 
    {'M'}     38       64       131      false 
    {'F'}     38       64       131      false 
    {'F'}     40       67       133      false 
    {'F'}     49       64       119      false 

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

свернуть все

Введите массив ячеек в виде 2D массива ячеек. Каждый столбец C обеспечивает данные для табличной переменной.

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

  • Если содержимое ячеек в столбце имеет различные размеры и типы, то соответствующая табличная переменная является массивом ячеек.

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

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

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

Пример: 'RowNames',{'row1','row2','row3'} использует имена строки, row1, row2, и row3 для таблицы, T.

Строка называет в виде разделенной запятой пары, состоящей из 'RowNames' и массив ячеек из символьных векторов или массив строк, элементы которого непусты и отличны. Количество имен должно равняться количеству строк, size(C,1).

Имена строки могут иметь любые символы Unicode®, включая символы non-ASCII и пробелы.

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

Имена переменных в виде разделенной запятой пары, состоящей из 'VariableNames' и массив ячеек из символьных векторов или массив строк, элементы которого непусты и отличны. Количество имен должно равняться количеству переменных, size(C,2).

Имена переменных могут иметь любые символы Unicode, включая символы non-ASCII и пробелы.

Начиная с R2021a

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

Имена размерности могут иметь любые символы Unicode, включая символы non-ASCII и пробелы.

Перед R2021a можно указать, что размерность называет только путем установки DimensionNames свойство выхода.

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

свернуть все

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

Вопросы совместимости

развернуть все

Поведение изменяется в R2019b

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

Введенный в R2013b