У меня есть txt-файл, а содержимое файла - это строки чисел, Каждая строка содержит 5 чисел с плавающей запятой, с каждой запятой разделяя запятую. пример:Как читать файл в Matlab?
1,1, 12, 1,42562, 3,5, 2,2
2,1, 3,3, 3, 3,333, 6,75
Как я могу прочитать содержимое файла в матрицу в MATLAB? До сих пор у меня есть это:
fid = fopen('file.txt');
comma = char(',');
A = fscanf(fid, ['%f', comma]);
fclose(fid);
Проблема заключается в том, что это только дает мне первую строчку и когда я попытаться написать содержание AI получить это: 1.0E + 004 * некоторое количество
Может кто-то мне помочь, пожалуйста? Я предполагаю, что для файла мне нужно прочитать его в цикле, но я не знаю, как это сделать.
Edit: Еще один вопрос: Когда я делаю вывод AI получает это:
A =
1.0e+004 *
4.8631 0 0 0 0.0001
4.8638 -0.0000 -0.0000 0.0004 0.0114
4.8647 -0.0000 -0.0000 0.0008 0.0109
Я хочу, чтобы один и то же значение, что в файл, чтобы быть в матрице, как я могу сделать цифры, чтобы быть регулярными float и не отформатирован так? Или числа в матрице фактически плавают, но вывод отображается только так?
ты заинтересован только в числовых данных? – fpe
да, только цифры. – shlomi
@shlomi, вы ударяете ноготь по голове своим последующим наблюдением. Именно так MATLAB отображает данные. Если вы посмотрите в рабочей области, вы можете указать, в каком формате находятся ваши данные. Альтернативно, вы можете ввести 'whos' в командную строку, и в нем будут перечислены все ваши переменные, их размеры и их типы. – Doresoom