У меня есть текстовый файл D с n-строками и 5 столбцами, которые я хочу прочитать. Каждая строка будет представлять вектор. Однако, когда значение равно NA Я хочу, чтобы оставить его пустым:читать текстовый файл с NA как пустой matlab
D:
122 12 10 NA NA
110 10 30 45 87
110 12 10 NA NA
..
Я делаю это:
bid = fopen(D,'r');
bfile = textscan(bid,'%d %d %d %s %s','TreatAsEmpty',{'NA'})
var=122;
IndVar=bfile {:,1}==var;
rest=bfile(:,[2:end])
vecVar=rest(IndVar)
Я wnat, чтобы получить векторы из строки без NA: vecVar = [12 10]; [10 30 45 87]; [12 10];
Я стараюсь это:
rest= rest(~isnan(rest));
Я получаю сообщение об ошибке:
Неопределенная функция 'IsNaN' для входных аргументов типа 'клетка'.
Я играл более часа, но все еще не могу понять это. Любая помощь будет очень признательна!
большое спасибо!
Если вы наберете 'size (rest)' в окне Command, что вы получаете? –
@ CST-Link size (rest) дает ans = 1 4. Хотя должен быть n-ряд X 4 .. – mil
Дело в том, что 'textscan' полезен для получения данных * по столбцам *, но вам нужна фильтрация данных по строкам. –