wordDocumentImportOptions

Настройки импорта возражают для файлов документов Microsoft Word

    Описание

    WordDocumentImportOptions объект позволяет вам задать как MATLAB® импортирует структурированный, табличные данные от Microsoft® Файлы документов Word. Объект содержит свойства, которые управляют процессом импорта данных, включая обработку ошибок и недостающих данных.

    Создание

    Можно создать WordDocumentImportOptions объект с помощью любого wordDocumentImportOptions функция (описанный здесь) или detectImportOptions функция:

    • Используйте wordDocumentImportOptions задавать свойства импорта на основе ваших требований импорта.

    • Используйте detectImportOptions обнаружить и заполнить свойства импорта на основе содержимого файла документа Microsoft Word, заданного в filename.

      opts = detectImportOptions(filename)

    Описание

    opts = wordDocumentImportOptions создает WordDocumentImportOptions объект с одной переменной.

    opts = wordDocumentImportOptions('NumVariables',numVars) создает объект с количеством переменных, заданных в numVars.

    пример

    opts = wordDocumentImportOptions(___,Name,Value) задает дополнительные свойства для WordDocumentImportOptions объект с помощью одних или нескольких аргументов name-value.

    Входные параметры

    развернуть все

    Количество переменных в виде положительного скалярного целого числа.

    Свойства

    развернуть все

    Variable Properties

    Имена переменных в виде массива ячеек из символьных векторов или массива строк. VariableNames свойство содержит имена, чтобы использовать при импорте переменных.

    Если данные содержат N переменные, но никакие имена переменных заданы, затем VariableNames свойство содержит {'Var1','Var2',...,'VarN'}.

    Чтобы поддержать недопустимые идентификаторы MATLAB как, имена переменных, такие как имена переменных, содержащие пробелы и символы non-ASCII, устанавливают значение VariableNamingRule к 'preserve'.

    Пример: opts.VariableNames возвращает текущие (обнаруженные) имена переменных.

    Пример: opts.VariableNames(3) = {'Height'} изменяет название третьей переменной к Height.

    Типы данных: char | string | cell

    Отметьте, чтобы сохранить имена переменных в виде любого "modify" или "preserve".

    • "modify" — Преобразуйте недопустимые имена переменных (как определено isvarname функция) к допустимым идентификаторам MATLAB.

    • "preserve" — Сохраните имена переменных, которые не являются допустимыми идентификаторами MATLAB, такими как имена переменных, которые включают символы non-ASCII и пробелы.

    Начиная в R2019b, имена переменных и имена строки могут включать любые символы, включая символы non-ASCII и пробелы. Кроме того, они могут начать с любых символов, не только обозначает буквами. Переменная и имена строки не должны быть допустимыми идентификаторами MATLAB (как определено isvarname функция. Чтобы сохранить эти имена переменных и имена строки, установите значение VariableNamingRule к "preserve". Имена переменных не обновляются когда значение VariableNamingRule изменяется от "modify" к "preserve".

    Тип данных переменной в виде массива ячеек из символьных векторов или массив строк, содержащий набор допустимых имен типов данных. VariableTypes свойство определяет типы данных использовать при импорте переменных.

    Обновить VariableTypes свойство, используйте setvartype функция.

    Пример: opts.VariableTypes возвращает текущие типы данных переменных.

    Пример: opts = setvartype(opts,'Height',{'double'}) изменяет тип данных переменной Height к double.

    Подмножество переменных, чтобы импортировать в виде вектора символов, строкового скаляра, массива ячеек из символьных векторов, массива строк или массива числовых индексов.

    SelectedVariableNames должно быть подмножество имен, содержавшихся в VariableNames свойство. По умолчанию, SelectedVariableNames содержит все имена переменных от VariableNames свойство, что означает, что все переменные импортируются.

    Используйте SelectedVariableNames свойство импортировать только переменные интереса. Задайте подмножество переменных с помощью SelectedVariableNames свойство и использование readtable импортировать только то подмножество.

    Чтобы поддержать недопустимые идентификаторы MATLAB как, имена переменных, такие как имена переменных, содержащие пробелы и символы non-ASCII, устанавливают значение VariableNamingRule к 'preserve'.

    Пример: opts.SelectedVariableNames = {'Height','LastName'} выбирает только две переменные, Height и LastName, для операции импорта.

    Пример: opts.SelectedVariableNames = [1 5] выбирает только две переменные, первую переменную и пятую переменную, для операции импорта.

    Пример: T = readtable(filename,opts) возвращает таблицу, содержащую только переменные, заданные в SelectedVariableNames свойство opts объект.

    Типы данных: uint16 | uint32 | uint64 | char | string | cell

    Введите определенные переменные настройки импорта, возвращенные как массив переменных объектов настроек импорта. Массив содержит объект, соответствующий каждой переменной, заданной в VariableNames свойство. Каждый объект в массиве содержит свойства, которые поддерживают импорт данных с определенным типом данных.

    Параметры переменной поддерживают эти типы данных: числовой, текст, logicaldatetime, или categorical.

    Чтобы запросить ток (или обнаруженный) опции для переменной, используйте getvaropts функция.

    Чтобы установить и настроить опции для переменной, используйте setvaropts функция.

    Пример: opts.VariableOptions возвращает набор VariableImportOptions объекты, одно соответствие каждой переменной в данных.

    Пример: getvaropts(opts,'Height') возвращает VariableImportOptions объект для Height переменная.

    Пример: opts = setvaropts(opts,'Height','FillValue',0) устанавливает FillValue свойство для переменной Height к 0.

    Location Properties

    Табличное выражение XPath данных в виде вектора символов или строкового скаляра, что чтение функционирует использование, чтобы выбрать выходные табличные данные. Необходимо задать TableSelector как допустимое выражение версии 1.0 XPath.

    Эта таблица показывает некоторые выражения XPath в качестве примера для выбора таблиц в файлах документов Microsoft Word.

    ОписаниеTableSelector
    Таблица, содержащая текст "Денежные дивиденды""//w:tbl[contains(.,'Cash dividends')]"
    Вторая таблица больше чем с 10 строками"//w:tbl[count(w:tr)>10][2]"
    Таблица с ячейкой заголовка, точно совпадающей с "Описанием""//w:tbl[w:tr[1]/w:tc='Description']"

    Пример: 'TableSelector',"//w:tbl[contains(.,'Cash dividends')]"

    Местоположение данных в виде положительного скалярного целого числа или N-by-2 массив положительных скалярных целых чисел. Задайте DataRows использование одной из следующих форм.

    Задайте как

    Описание

    n

    Задайте первую строку, которая содержит данные. Определение значения с помощью n устанавливает значение DataRows свойство к [n inf]. Функция импорта читает все строки между n и конец файла.

    n должно быть положительное целое число, больше, чем нуль.

    [n1 n2]

    Укажите диапазон строки, который содержит данные. n1 первая строка, которая содержит данные и n2 последняя строка, которая содержит данные.

    Значения в массиве [n1 n2] должны быть ненулевые положительные целые числа и n2 должен быть больше n1.

    [n1 n2; n3 n4;...]

    Укажите несколько диапазонов строки, чтобы читать с N-by-2 массив, содержащий N различные области значений строки.

    Допустимый массив нескольких областей значений строки должен:

    • Укажите диапазоны строки в увеличивающемся порядке, который является первым диапазоном строки, указанным в массиве, появляется в файле перед другими областями значений строки.

    • Содержите только неперекрывающиеся области значений строки.

    При указывании нескольких диапазонов строки используйте Inf только, когда определение конца последней строки располагается в массиве. Например, [1 3; 5 6; 8 Inf].

    Пример: opts.DataRows = 5 устанавливает DataRows свойство к значению [5 inf]. Считайте все строки данных, начинающих со строки 5 до конца файла.

    Пример: opts.DataRows = [2 6] устанавливает свойство считать строки 2 через 6.

    Пример: opts.DataRows = [1 3; 5 6; 8 inf] устанавливает свойство считать строки 1, 2, 3, 5, 6, и все строки между 8, и конец файла.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Строка называет местоположение в виде положительного скалярного целого числа. RowNamesColumn свойство задает местоположение столбца, содержащего имена строки.

    Если RowNamesColumn задан как 0, затем не импортируйте имена строки. В противном случае импортируйте имена строки из заданного столбца.

    Пример: opts.RowNamesColumn = 2;

    Типы данных: single | double | uint8 | uint16 | uint32 | uint64

    Строка, содержащая имена переменных в виде неотрицательного целого числа. VariableNamesRow свойство задает номер строки, где имена переменных расположены.

    Если VariableNamesRow 0, затем не импортируйте имена переменных. В противном случае импортируйте имена переменных из заданной строки.

    Пример: opts.VariableNamesRow = 6;

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Строка, содержащая переменные модули в виде неотрицательного целого числа.

    Если VariableUnitsRow 0, затем программное обеспечение не импортирует переменные модули. В противном случае программное обеспечение импортирует переменные модули из заданной строки.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Строка, содержащая описания переменной в виде неотрицательного целого числа.

    Если VariableDescriptionsRow 0, затем программное обеспечение не импортирует описания переменной. В противном случае программное обеспечение импортирует описания переменной из заданной строки.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Заменяющие правила

    Процедура, чтобы управлять недостающими данными в виде одного из значений в этой таблице.

    MissingRule Поведение
    'fill'

    Замените недостающие данные на содержимое FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    'error'Прекратите импортировать и отобразите сообщение об ошибке, показывающее недостающую запись и поле.
    'omitrow'Не используйте строки, которые содержат недостающие данные.
    'omitvar'Не используйте переменные, которые содержат недостающие данные.

    Пример: opts.MissingRule = 'omitrow';

    Типы данных: char | string

    Процедура, чтобы обработать пустые строки в данных в виде "skip"чтение, или "error". Функция импорта интерпретирует пробел как пустой.

    Правило пустой строкиПоведение
    "skip"Пропустите пустые строки.
    "read"Импортируйте пустые строки. Функция импорта анализирует пустую строку с помощью значений, заданных в VariableOptionsMissingRule , и другие соответствующие свойства.
    "error"Отобразите сообщение об ошибке и прервите операцию импорта.

    Процедура, чтобы обработать ошибки импорта в виде одного из значений в этой таблице.

    ImportErrorRule Поведение
    'fill'

    Замените данные, где ошибка произошла с содержимым FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    'error'Прекратите импортировать и отобразите сообщение об ошибке, показывающее вызывающую ошибку запись и поле.
    'omitrow'Не используйте строки, где ошибки происходят.
    'omitvar'Не используйте переменные, где ошибки происходят.

    Пример: opts.ImportErrorRule = 'omitvar';

    Типы данных: char | string

    Процедура, чтобы обработать дополнительные столбцы в данных в виде одного из значений в этой таблице.

    ExtraColumnsRule Поведение
    'addvars'

    Чтобы импортировать дополнительные столбцы, создайте новые переменные. Если существует N дополнительные столбцы, затем импортируйте новые переменные как 'ExtraVar1', 'ExtraVar2',..., 'ExtraVarN'. Дополнительные столбцы данных импортируются как будто их VariableTypes char.

    'ignore'Проигнорируйте дополнительные столбцы данных.
    'wrap'Перенесите дополнительные столбцы данных к новым записям. Это действие не изменяет количество переменных.
    'error'Отобразите сообщение об ошибке и прервите операцию импорта.

    Типы данных: char | string

    Процедура, чтобы обработать ячейки с объединенными столбцами в виде одного из значений в этой таблице.

    ImportErrorRule Поведение
    "placeleft"

    Поместите данные в крайнюю левую ячейку и заполните остальные ячейки содержимым FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    "placeright"

    Поместите данные в самую правую ячейку и заполните остальные ячейки содержимым FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    "duplicate"

    Скопируйте данные во всех ячейках.

    "omitrow"Не используйте строки, где ошибки происходят.
    "error"Отобразите сообщение об ошибке и прервите операцию импорта.

    Процедура, чтобы обработать ячейки с объединенными строками в виде одного из значений в этой таблице.

    ImportErrorRule Поведение
    "placetop"

    Поместите данные в главную ячейку и заполните остальные ячейки содержимым FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    "placebottom"

    Поместите данные в нижнюю ячейку и заполните остальные ячейки содержимым FillValue свойство.

    FillValue свойство задано в VariableImportOptions объект переменной импортируется. Для получения дополнительной информации о доступе к FillValue свойство, смотрите getvaropts.

    "duplicate"

    Скопируйте данные во всех ячейках.

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

    Функции объекта

    Примеры

    свернуть все

    Создайте настройки импорта для файла документа Microsoft Word, задайте таблицу, чтобы импортировать, и затем считать данные.

    Файл MaintenanceReport.docx содержит две таблицы. Последняя строка второй таблицы содержит ячейку с объединенными столбцами, которые не совпадают с табличными переменными.

    Создайте WordDocumentImportOptions объект:

    • Считайте пять переменных из таблицы.

    • Читайте из первой таблицы, содержащей слово "Description" с помощью запроса XPath "//w:tbl[contains(.,'Description')]".

    • Считайте имена переменных из первой строки.

    • Пропустите строки чтения, которые имеют ячейки с объединенными столбцами.

    opts = wordDocumentImportOptions( ...
        'NumVariables',5, ...
        'TableSelector',"//w:tbl[contains(.,'Description')]", ...
        'VariableNamesRow',1, ...
        'MergedCellColumnRule','omitrow')
    opts = 
      WordDocumentImportOptions with properties:
    
       Replacement Properties:
                    MissingRule: "fill"
                ImportErrorRule: "fill"
                   EmptyRowRule: "skip"
           MergedCellColumnRule: "omitrow"
              MergedCellRowRule: "placetop"
               ExtraColumnsRule: "addvars"
    
       Variable Import Properties: Set types by name using setvartype
                  VariableNames: ["Var1"    "Var2"    "Var3"    "Var4"    "Var5"]
                  VariableTypes: ["char"    "char"    "char"    "char"    "char"]
          SelectedVariableNames: ["Var1"    "Var2"    "Var3"    "Var4"    "Var5"]
                VariableOptions: Show all 5 VariableOptions 
    	Access VariableOptions sub-properties using setvaropts/getvaropts
             VariableNamingRule: "preserve"
    
       Location Properties:
                  TableSelector: "//w:tbl[contains(.,'Description')]"
                       DataRows: [1 Inf]
               VariableNamesRow: 1
               VariableUnitsRow: 0
        VariableDescriptionsRow: 0
                 RowNamesColumn: 0
    
    

    Считайте таблицу из файла документа Microsoft Word с помощью readtable функция с объектом опций.

    filename = "MaintenanceReport.docx";
    T = readtable(filename,opts)
    T=4×5 table
                                      Description                                         Category             Urgency           Resolution            Cost   
        _______________________________________________________________________    ______________________    ___________    ____________________    __________
    
        {'Description'                                                        }    {'Category'          }    {'Urgency'}    {'Resolution'      }    {'Cost'  }
        {'Items are occasionally getting stuck in the scanner spools.'        }    {'Mechanical Failure'}    {'Medium' }    {'Readjust Machine'}    {'$45'   }
        {'Loud rattling and banging sounds are coming from assembler pistons.'}    {'Mechanical Failure'}    {'Medium' }    {'Readjust Machine'}    {'$35'   }
        {'There are cuts to the power when starting the plant.'               }    {'Electronic Failure'}    {'High'   }    {'Full Replacement'}    {'$16200'}
    
    
    Введенный в R2021b