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

Обычно можно импортировать таблицы с помощью readtable функция. Однако иногда импорт табличных данных требует дополнительного контроля над процессом импорта. Например, можно хотеть выбрать переменные для импорта или обработки строк с отсутствующими или вызывающими ошибку данными. Чтобы контролировать процесс импорта, можно создать объект настроек импорта. Объект имеет свойства, которые можно настроить в зависимости от ваших потребностей импорта.

Создание настроек импорта

Чтобы создать объект настроек импорта для набора выборочных данных, airlinesmall.csv, используйте detectImportOptions функция. The detectImportOptions функция создает DelimitedTextImportOptions объект для этого текстового файла. Полный список свойств объекта настроек импорта см. в detectImportOptions страница с описанием.

opts = detectImportOptions('airlinesmall.csv');

Настройка настроек импорта на уровне таблицы

Объект настроек импорта имеет свойства, которые можно настроить, чтобы контролировать процесс импорта. Некоторые свойства применяются ко всей таблице, другие - к определенным переменным. Свойства, которые влияют на всю таблицу, включают правила для управления вызывающими ошибки или отсутствующими данными. Например, удалите строки с данными, которые вызывают ошибки импорта, установив ImportErrorRule на 'omitrow'. Замените отсутствующие значения установкой MissingRule на 'fill'. The 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   

См. также

| | | | | | | | |

Похожие темы