Определение настроек импорта для таблиц

Как правило, вы можете таблицы импорта с помощью функции 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   

Смотрите также

| | | | | |

Похожие темы

Была ли эта тема полезной?