Cell array data to double conversion
95 次查看(过去 30 天)
显示 更早的评论
Hi all,
I have a cell array that I want to transform to a double array. Then I would like to fill in the double array with data from cell arrays. To solve this problem I have tried two things:
- I have tried cell2mat, which gave a result that I couldent interpret and didnt work.
- I tried str2double, this does not give an error, but it writes only NaN values in the double array.
The names of the variables are
- Comp_all: cell array
- dat: translate cell to double
- dat2013: double array which I would like to fill in
How can I transfer both numeric and non-numeric data from cel arrays to double arrays?
The code is used to do this looks like:
dat = str2double(Com_all);
dat2013 = zeros(length(dat),5);
dat2013(1:end,1) = dat(1:end,1);
7 个评论
Guillaume
2019-11-8
Stephen's advice: "Use a table. A table is probably the best way to [work with your type of data"
Note that I already gave you that advice (and plenty more...) several days ago in a question that you then deleted (so I completely wasted my time helping you).
采纳的回答
CAM
2019-11-7
Assuming each cell has only one entry, try using cellfun with str2double to convert the cell array of strings to a cell array of doubles, then use cell2mat.
Air code (untested; may need adjustment):
dblComp_all = cellfun(@str2double, Comp_all);
dat = cell2mat(dblComp_all);
3 个评论
更多回答(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!