How to read complex number from a *.csv file?

Hi,
I have to import a data set from a csv file but I cannot find any way to import the complex number from the file to Matlab to do the data processing. I try to search on the internet but no solutions are helpful. I tried importdata, csvread, textread,... but they didn't work. Can anyone show me how to solve this problem? I attached part of my csv file below. I really need help. Thanks

Réponses (2)

sixwwwwww
sixwwwwww le 5 Déc 2013
you can do it as follows:
[num, str, raw] = xlsread('filename.csv');
a = str2num(cell2mat(raw));

5 commentaires

Ngoc
Ngoc le 5 Déc 2013
Thank you for answering me. I do what you recommended but matlab said: "Error using cell2mat (line 46) All contents of the input cell array must be of the same data type." Attached below is how the raw data looks, and I don't know why the input cells are not of the same data type.
Ngoc
Ngoc le 5 Déc 2013
Ah, maybe 0 is treated as a number, not a string. But the problem is still not solved.
sixwwwwww
sixwwwwww le 5 Déc 2013
can you upload your csv file for better look into your data?
Ngoc
Ngoc le 5 Déc 2013
Here it is. This is only a small part that I cut from the file, which is too large to upload here.
Use the following code on your data. It will work fine. I checked it for your sample data:
[num, str, raw] = xlsread('filename.csv');
rawval = double(cellfun(@(x) ~isnumeric(x), raw));
a = zeros(size(raw));
b = a;
a(rawval == 0) = cell2mat(raw(rawval == 0));
b(rawval == 1) = str2double(raw(rawval == 1));
Matrix = a + b;
I hope it helps. Good luck!

Connectez-vous pour commenter.

G A
G A le 5 Déc 2013

0 votes

https://www.mathworks.co.uk/matlabcentral/newsreader/view_thread/239213

Catégories

En savoir plus sur Large Files and Big Data dans Centre d'aide et File Exchange

Question posée :

le 5 Déc 2013

Commenté :

le 5 Déc 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by