У меня есть файл CSV со смешанными записями (как double, так и string) и строка заголовка строк в первой строке.textscan возвращающий пустой массив ячеек
Я написал следующий код, чтобы импортировать этот CSV-файл в массив ячеек в MatLAB
%Determine Formatspec for CSV file
fid = fopen('URM_sample.csv')
C = textscan(fid, '%s', 'Delimiter', '\n')
str = C{1}{2,:}
nstr = textscan(str,'%s','delimiter',',')
fspec = ''
for i = 1:length(nstr{1}) % Check each string
if isempty(str2num(nstr{1}{i})) % This string is text
fspec = [fspec ' %s'];
else % This string is a number
fspec = [fspec ' %f'];
end
end
B = textscan(fid,fspec,'HeaderLines',1,'Delimiter',',')
Unfortunatley, когда я открываю B все, что я получаю пустой массив 1x24 клеток, где первоначально CSV является 201x24 (содержит 201 записи) .... Любая идея о том, чего я здесь не хватает? Спасибо
Трудно сказать, что случилось с файлом CSV. Почему вы не используете csvread()? Если вам нужно прочитать некоторые строки, я бы посоветовал использовать xlsread() – oro777
Показывать первые несколько строк вашего файла csv. – Hoki