У меня есть такой CSV (одна строка):
101, 120, 130
Как я могу сканировать их в такие переменные:
pt_num = 101
x = 120
y = 130
У меня есть такой CSV (одна строка):
101, 120, 130
Как я могу сканировать их в такие переменные:
pt_num = 101
x = 120
y = 130
Просто используйте csvread
:
M = csvread('filename.csv');
pt_num = M(:,1);
x = M(:,2);
y = M(:,3);
Вы также можете использовать textscan
для получения каждого столбца в массиве ячеек:
fid = fopen('filename.csv','r');
C = textscan(fid,'%d, %n, %n');
fclose(fid);
И есть fscanf
, но вам придется переформировать массив:
fid = fopen('filename.csv','r');
M = fscanf(fid,'%d, %f, %f')
fclose(fid);
M = reshape(M,3,[])';
Наконец, dlmread
, который работает так же, как csvread
:
M = dlmread('filename.csv',',');
M(:,1)
, который получает все значения в первом столбце. Однако в MATLAB естьfscanf
, если вы хотите пойти по этому пути, это просто проще. 23.11.2013