Conversion String to Integer with Positive or Negative
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a 1 X 20 column vector of string data in a file name A.txt.
%Input in A.txt:
60N
61N
50S
51S
Objective: to read the column of data as integers and represent N as positive and S as negative.
So the output would be:
60
61
-50
-51
I have researched other posts, apply str2num double. I'm totally stuck.
Thanks,
Amanda
0 Kommentare
Akzeptierte Antwort
Azzi Abdelmalek
am 19 Aug. 2012
Bearbeitet: Azzi Abdelmalek
am 19 Aug. 2012
c=char('60N', '61N', '50S', '51S')
cc=[c(:,end) c(:,1:end-1)]
result=cellfun (@(x) regexprep(x,'N','-'),cellstr(cc),'uni',false)
result=cellfun (@(x) regexprep(x,'S',''),result,'uni',false)
result=str2num(char(result))
0 Kommentare
Weitere Antworten (1)
Oleg Komarov
am 19 Aug. 2012
% Import data
fid = fopen('C:\Users\Oleg\Desktop\test.txt');
out = textscan(fid, '%2f%s','Delimiter','');
fclose(fid);
% Recognize positive and negative
data = out{1} .* (strcmp('N',out{2})*2-1);
0 Kommentare
Siehe auch
Kategorien
Mehr zu Data Type Conversion 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!