How to extract cell array data to numeric arrays or a single multidimensional array
조회 수: 1 (최근 30일)
이전 댓글 표시
I'm working with 7 sets of data which I've imported into Matlab using the code below. Each cell in data contains a 1620x1869 array. I want to perform operations on each of these datasets, but I can't figure out how to extract the data into individual numeric arrays. Although the operations that I perform next are roughly the same for all sets, the data used for each is different which is why I'd like to extract the data first so that I can run functions individually. I have tried cell2mat but get the following error:
"Error using cell2mat (line 52). CELL2MAT does not support cell arrays containing cell arrays or objects."
Perhaps importanting my data into a cell array was appropriate, however I haven't figured out how to save the data to seperate numeric arrays in the for loop.
Thanks in advance for any help.
------------
for i=1:7
myfilename = sprintf('myfile%d.txt',i);
filename = fullfile('path',myfilename);
fid = fopen(filename,'r');
data{i} = table2cell(readtable(filename));
fid = fclose(fid);
end
댓글 수: 0
채택된 답변
Jon
2021년 2월 16일
If I understand correctly, you should be able to extract the kth individual array using something like:
A = data{k}
댓글 수: 3
Jon
2021년 2월 16일
I also often struggle with the syntax to get what I want when working with cell arrays. Sometimes I find it helpful to just play around a little with a simple example in my command window until I get it working.
Here's a good explanation of it all: https://blogs.mathworks.com/loren/2006/06/21/cell-arrays-and-their-contents/
추가 답변 (0개)
참고 항목
카테고리
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!