CSVファイルからの読み込んだ文字(数字)データの数字への変換
Ältere Kommentare anzeigen
カンマ区切りのCSVファイル(test.csv(10x10の数字データ))から数字を読み出そうとしています。
下記のように書いたのですが、
v = str2double(dt);
でvに入る値がNaNになってしまいます。
ステップ実行でdtを見る限り正しく文字(数字)が入っているのですが、vにはNaNが入ります。
何を間違えているのでしょうか。
fid = fopen('test.csv', 'r');
databox = zeros(10);
for r = 1:10
d = fgetl(fid);
[dt, rem] = strtok(d, ',');
v = str2double(dt);
databox(r, 1) = real(v);
for c = 2:10
[dt, rem] = strtok(rem, ',');
v = str2double(dt);
databox(r, c) = real(v);
end
end
fclose(fid);
6 Kommentare
...まさか
str2double('1+2i')
澄人
am 11 Mär. 2024
Atsushi Ueno
am 13 Mär. 2024
ロケール設定を確認してみてはいかがでしょうか。
澄人
am 14 Mär. 2024
Atsushi Ueno
am 14 Mär. 2024
Bearbeitet: Atsushi Ueno
am 14 Mär. 2024
which str2double
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu データ型の変換 finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!