Extracting data from cell array
조회 수: 12 (최근 30일)
이전 댓글 표시
Let's say that i have
data =
1×4 cell array
{12×1 cell} {12×1 cell} {12×1 int32} {12×1 int32}
first 12x1 cell array contains Names, second sournames, third age and forth id numer.
I would like to do something like extract just 1st elements from each cell array - it woul'd give me an array of data for one person, then do it for the next 11 rows.
How to make it? It should be convert into struct, and I know that repmat function can be useful here, but i have no clue how to do it.
댓글 수: 1
KSSV
2020년 11월 29일
You can convert cell to structure or table using cell2struct and cell2table. Read about them and then it should be easy to follow.
채택된 답변
Image Analyst
2020년 11월 29일
편집: Image Analyst
2020년 11월 29일
It would help you to learn about tables, which are more appropriate in this case than cell arrays:
% Original cell array:
data = {{'Smith' ; 'Gold'}, {'Ann' ; "Agnes"}, {'22' ; '24'}, {'1' ; '2'}}
% Convert cell array into table:
t = table(data{1}, data{2}, data{3}, data{4}, ...
'VariableNames', {'LastName', 'FirstName', 'Age', 'IDNumber'})
% Get out row 1:
a = t(1, :)
% Get out row 2:
b = t(2, :)
댓글 수: 0
추가 답변 (1개)
KSSV
2020년 11월 29일
T = cell2table(C,...
'VariableNames',{'Name' 'SirName' 'Age' 'Id'}) ;
T
You have the data in Table T, you can extract what you want.
댓글 수: 4
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!