Как правило, таблицы можно импортировать с помощью readtable функция. Однако иногда для импорта табличных данных требуется дополнительный контроль над процессом импорта. Например, можно выбрать переменные для импорта или обработки строк с отсутствующими или вызывающими ошибки данными. Для управления процессом импорта можно создать объект параметров импорта. Объект имеет свойства, которые можно настроить в зависимости от потребностей импорта.
Чтобы создать объект параметров импорта для образца набора данных, airlinesmall.csv, используйте detectImportOptions функция. detectImportOptions функция создает DelimitedTextImportOptions для этого текстового файла. Полный список свойств объекта параметров импорта см. в разделе detectImportOptions справочная страница.
opts = detectImportOptions('airlinesmall.csv');Объект параметров импорта имеет свойства, которые можно настроить для управления процессом импорта. Некоторые свойства применяются ко всей таблице, а другие - к определенным переменным. Свойства, влияющие на всю таблицу, включают правила управления данными, вызывающими ошибки или отсутствующими. Например, удалите строки с данными, которые вызывают ошибки импорта, установив значение ImportErrorRule кому 'omitrow'. Замените отсутствующие значения, установив значение MissingRule кому 'fill'. FillValue значение свойства определяет, какое значение заменяет отсутствующие значения. Например, можно заменить отсутствующие значения на NaN.
opts.ImportErrorRule = 'omitrow'; opts.MissingRule = 'fill';
Чтобы получить и задать параметры для определенных переменных, используйте getvaropts, setvartype, и setvaropts функции. Например, просмотрите текущие параметры переменных с именем FlightNum, Origin, Dest, и ArrDelay, с использованием getvaropts функция.
getvaropts(opts,{'FlightNum','Origin','Dest','ArrDelay'});Изменение типов данных для переменных с помощью setvartype функция:
Так как значения в переменной FlightNum являются идентификаторами для полета, а не числовыми значениями, измените его тип данных на char.
Так как переменные Origin и Dest обозначить конечный набор повторяющихся текстовых значений, изменить их тип данных на categorical.
opts = setvartype(opts,{'FlightNum','Origin','Dest','ArrDelay'},...
{'char','categorical','categorical','single'});Изменение других свойств с помощью setvaropts функция:
Для FlightNum , удалите все начальные пробелы из текста, установив WhiteSpaceRule свойство для trimleading.
Для ArrDelay переменная, заменить поля, содержащие 0 или NA со значением, указанным в FillValue путем установки параметра TreatAsMissing собственность.
opts = setvaropts(opts,'FlightNum','WhitespaceRule','trimleading'); opts = setvaropts(opts,'ArrDelay','TreatAsMissing',{'0','NA'});
Укажите переменные для получения, импортируйте их с помощью readtable, и отобразить первый 8 строк таблицы.
opts.SelectedVariableNames = {'FlightNum','Origin','Dest','ArrDelay'};
T = readtable('airlinesmall.csv',opts);
T(1:8,:)ans=8×4 table
FlightNum Origin Dest ArrDelay
_________ ______ ____ ________
{'1503'} LAX SJC 8
{'1550'} SJC BUR 8
{'1589'} SAN SMF 21
{'1655'} BUR SJC 13
{'1702'} SMF LAX 4
{'1729'} LAX SJC 59
{'1763'} SAN SFO 3
{'1800'} SEA LAX 11
DelimitedTextImportOptions | detectImportOptions | getvaropts | readcell | readmatrix | readtable | readvars | setvaropts | setvartype | SpreadsheetImportOptions