How to converting complex numbers to absolute values?
Mostrar comentarios más antiguos
Hello Matlab experts
I have difficulty with my complex data file. I would appreciate if some one can help me with it. The issue is how to import csv files containing complex values (as seen below) into matlab and then convert them into absolute values and also remove parantesis. I treid several commands but did not succeed it :(
This is how data look like. I also attach it as csv file:
theta\phi[rad] 0j (0.010489457941869092+0j) (0.020978915883738184+0j)(0.00393683289923533+0j) (-1.1834597816970487+0j) (-1.1825728101249893+0j) (-1.1815870828154462+0j)(0.00787366579847066+0j) (-2.498909050828868+0j) (-2.5891527984935+0j) (-2.5591423614638047+0j)(0.01181049869770599+0j) (-2.7942230095552336+0j) (-3.8767443114429523+0j) (-3.7833384009620286+0j)
Thank you very much
2 comentarios
Stephen23
el 30 de Mayo de 2022
"This is how data look like."
In reality it looks like this, including alternating lines with empty fields:

Whoever invented that file format is intentionally trying to make everyone else's lives harder. They are not a happy person.
Masoud Taleb
el 30 de Mayo de 2022
Editada: Masoud Taleb
el 30 de Mayo de 2022
Respuesta aceptada
Más respuestas (1)
a = readcell('sample data.csv');
a{1} = 'NaN'
b = zeros(size(a));
for i=1:numel(a)
if isnumeric(a{i})
b(i) = a{i};
else
%a{i}
b(i) = eval(a{i});
end
end
b
Categorías
Más información sobre Data Type Conversion en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!