How can I split up several numbers in one cell from an excel file?
15 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dominik Kümpflein
am 14 Feb. 2019
Kommentiert: Star Strider
am 14 Feb. 2019
Dear Matlab-Community,
I want to import an excel file with 9 numbers in one cell separated by a comma. I need this data to be split up and written in 9 columns.
For example:
Input:
0,565.24,18.3882,0,69.1582,0,15.68,0,0
1,582.69,18.3895,0,64.1595,0,15.33,0,0
... and so on.
Could somebody help me with this?
Thanks in advance!
Domi
0 Kommentare
Akzeptierte Antwort
Star Strider
am 14 Feb. 2019
I am not exactly certain what you want.
One option would be the mat2cell (link) function. Each column would be its own cell, so you could then address them easily. Use the first output of xlsread (it should be a numeric matrix).
The code would be something like this:
[D,S] = xlsread('YourFile.xlsx');
ColCells = mat2cell(D, size(D,1), ones(1,size(D,2)));
3 Kommentare
Weitere Antworten (2)
Bob Thompson
am 14 Feb. 2019
[~,~,data] = xlsread('myexcel.xlsx',range);
data = cellfun(@(x) str2num(x),data);
This is a first crack at the code. I'm not absolutely certain that the cellfun will work as I want it to, since I haven't tested it. Basically, you are going to read all of the cells of the excel file into a matlab cell array. I expect that the cells with multiple numbers will be treated as a string, but using str2num should convert them into actual number arrays for you.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Spreadsheets finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!