Я работаю над некоторым кодом MATLAB, который анализирует CSV-файл в таблице. Файл CVS имеет семь столбцов, разделенных запятыми, а также содержит тысячи строк.Ломать вывод текстового сканирования MATLAB в таблицу
Сейчас код разборе выглядит следующим образом:
fid = fopen('data.csv', 'r');
parsed = textscan(fid, '%s %f %f %f %f %f %f', 'Delimiter',',', 'HeaderLines', 1);
Но disp(parsed);
возвращает объект, который содержит массив, который имеет только один столбец. Эти данные выглядят примерно так:
[209,1] = 3/8/2015 16:12:00
[210,1] = 8.09
[211,1] = 952
[212,1] = 603
[213,1] = 100.8
[214,1] = 20.8
[215,1] = 11.3
[216,1] = 10.66
[217,1] = 3/8/2015 16:47:00
[218,1] = 8.1
[219,1] = 950
[220,1] = 604
[221,1] = 100
[222,1] = 15.8
[223,1] = 11.18
[224,1] = 10.71
[225,1] = 3/8/2015 17:22:00
[226,1] = 8.07
[227,1] = 981
Как разбить эти данные на таблицу. Я хочу иметь возможность взаимодействовать данными: parsed[1][3]
. Я думаю, что я просто пропускаю очевидный параметр, чтобы перейти в функцию textscan()
, но я нигде не могу найти документацию.
Любая помощь, которую вы могли бы предоставить, была бы очень признательна!
Update:
Вот небольшой пример файла CSV Я работаю с:
dt,temp,ldo,turbidity,ldo.per,orp,conductivity,ph
3/8/2015 00:02:00,7.99,11.52,3.8,96.3,612,1038,8.01
3/8/2015 00:07:00,7.98,11.52,3.5,96.3,612,1038,8.01
3/8/2015 00:12:00,7.96,11.52,3.4,96.3,612,1038,8.01
3/8/2015 00:17:00,7.97,11.54,3.7,96.5,612,1038,8.01
Я хотел бы выход, чтобы посмотреть что-то вроде:
A =
3/8/2015 00:02:00 7.99 11.52 3.8 96.3 612 1038 8.01
3/8/2015 00:07:00 7.98 11.52 3.5 96.3 612 1038 8.01
3/8/2015 00:12:00 7.96 11.52 3.4 96.3 612 1038 8.01
3/8/2015 00:17:00 7.97 11.54 3.7 96.5 612 1038 8.01
Опубликовать небольшой образец файла csv и желаемого вывода –
Я обновил свой ответ, чтобы включить образец ввода и вывода. Спасибо! –