Настройка параметров импорта данных базы данных
настраивает параметры импорта данных из базы данных в MATLAB ®. Функция возвращает значениеopts = setoptions(opts,varnames,Option1,OptionValue1,...,OptionN,OptionValueN)SQLImportOptions объект. Для импорта данных используется SQLImportOptions объекты, имена указанных переменных и параметры импорта с соответствующими значениями.
настраивает параметры импорта для переменных, заданных числовым индексом.opts = setoptions(opts,index,Option1,OptionValue1,...,OptionN,OptionValueN)
Настройка параметров импорта при импорте числовых данных из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта для числового столбца базы данных. Импорт данных с помощью sqlread функция.
В этом примере используется patients.xls электронная таблица, содержащая столбец Weight. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Загрузите информацию о пациенте в рабочую область MATLAB ®.
patients = readtable('patients.xls');Создать patients таблица базы данных с использованием информации о пациенте.
tablename = 'patients';
sqlwrite(conn,tablename,patients)Создание SQLImportOptions с использованием patients таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,tablename);
Настройка параметров импорта для Weight в столбце patients таблица базы данных. Поскольку этот столбец является числовым, измените тип данных на int64.
varnames = 'Weight'; opts = setoptions(opts,varnames,'Type','int64');
Импортируйте числовые данные в указанный столбец и просмотрите сводку импортированной переменной. Сводка показывает, что переменная имеет int64 тип данных.
opts.SelectedVariableNames = {'Weight'};
data = sqlread(conn,tablename,opts);
summary(data)Variables:
Weight: 100×1 int64
Values:
Min 111
Median 143
Max 202
Удалить patients таблицы базы данных с использованием execute функция.
sqlquery = ['DROP TABLE ' tablename];
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Настройка параметров импорта при импорте текстовых данных из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта для столбца текстовой базы данных. Импорт данных с помощью sqlread функция.
В этом примере используется patients.xls электронная таблица, содержащая первый столбец LastName. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = "MS SQL Server Auth"; conn = database(datasource,"","");
Загрузите информацию о пациенте в рабочую область MATLAB ®.
patients = readtable("patients.xls");Создать patients таблица базы данных с использованием информации о пациенте.
tablename = "patients";
sqlwrite(conn,tablename,patients)Создание SQLImportOptions с использованием patients таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,tablename);
Получение параметров импорта по умолчанию для LastName и SelfAssessedHealthStatus переменные.
varnames = ["LastName" "SelfAssessedHealthStatus"]; varOpts = getoptions(opts,varnames)
varOpts =
1x2 SQLVariableImportOptions array with properties:
Variable Options:
(1) | (2)
Name: 'LastName' | 'SelfAssessedHealthStatus'
Type: 'char' | 'char'
MissingRule: 'fill' | 'fill'
FillValue: '' | ''
To access sub-properties of each variable, use getoptions
Задайте параметры импорта для типа данных LastName переменная для string. Укажите LastName с помощью числового индекса, который находит переменную в SelectedVariables имущества SQLImportOptions объект. Также задайте параметры импорта для замены отсутствующих данных в LastName переменной с NoName значение заливки.
index = 1; opts = setoptions(opts,index,'Type',"string", ... 'FillValue',"NoName");
Установка параметров импорта для текстового регистра SelfAssessedHealthStatus переменная в верхнем регистре.
varname = "SelfAssessedHealthStatus"; opts = setoptions(opts,varname,'TextCaseRule',"upper");
Импорт текстовых данных в выбранные переменные и отображение первых восьми строк. Импортированные данные показывают, что LastName переменная имеет string тип данных и SelfAssessedHealthStatus текст переменной - верхний регистр.
opts.SelectedVariableNames = ["LastName" "SelfAssessedHealthStatus"]; T = sqlread(conn,tablename,opts); head(T)
ans=8×2 table
LastName SelfAssessedHealthStatus
__________ ________________________
"Smith" 'EXCELLENT'
"Johnson" 'FAIR'
"Williams" 'GOOD'
"Jones" 'FAIR'
"Brown" 'GOOD'
"Davis" 'GOOD'
"Miller" 'GOOD'
"Wilson" 'GOOD'
Удалить patients таблицы базы данных с использованием execute функция.
sqlstr = "DROP TABLE ";
sqlquery = strcat(sqlstr,tablename);
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Настройка параметров импорта при импорте данных даты и времени из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта для столбцов базы данных, содержащих данные даты и времени. Импорт данных с помощью sqlread функция.
В этом примере используется outages.csv файл, содержащий столбцы OutageTime и RestorationTime. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Загрузите информацию об отключении в рабочую область MATLAB ®.
outages = readtable('outages.csv');Создать outages таблицу базы данных с использованием информации об отключении.
tablename = 'outages';
sqlwrite(conn,tablename,outages)Извлеките данные с помощью sqlread и выведите первые восемь строк. Вторая строка RestorationTime переменная содержит отсутствующие данные.
data = sqlread(conn,tablename); head(data)
ans=8×6 table
Region OutageTime Loss Customers RestorationTime Cause
___________ _________________________ ______ __________ _________________________ _________________
'SouthWest' '2002-02-01 12:18:00.000' 458.98 1.8202e+06 '2002-02-07 16:50:00.000' 'winter storm'
'SouthEast' '2003-01-23 00:49:00.000' 530.14 2.1204e+05 '' 'winter storm'
'SouthEast' '2003-02-07 21:15:00.000' 289.4 1.4294e+05 '2003-02-17 08:14:00.000' 'winter storm'
'West' '2004-04-06 05:44:00.000' 434.81 3.4037e+05 '2004-04-06 06:10:00.000' 'equipment fault'
'MidWest' '2002-03-16 06:18:00.000' 186.44 2.1275e+05 '2002-03-18 23:23:00.000' 'severe storm'
'West' '2003-06-18 02:49:00.000' 0 0 '2003-06-18 10:54:00.000' 'attack'
'West' '2004-06-20 14:39:00.000' 231.29 NaN '2004-06-20 19:16:00.000' 'equipment fault'
'West' '2002-06-06 19:28:00.000' 311.86 NaN '2002-06-07 00:51:00.000' 'equipment fault'
Создание SQLImportOptions с использованием outages таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,tablename);
Получение параметров импорта по умолчанию для OutageTime и RestorationTime переменные.
varnames = {'OutageTime','RestorationTime'};
varOpts = getoptions(opts,varnames)varOpts =
1x2 SQLVariableImportOptions array with properties:
Variable Options:
(1) | (2)
Name: 'OutageTime' | 'RestorationTime'
Type: 'char' | 'char'
FillValue: '' | ''
To access sub-properties of each variable, use getoptions
Задайте параметры импорта для типа данных указанных переменных как datetime. Кроме того, задайте параметры импорта, чтобы заменить отсутствующие данные в указанных переменных текущей датой и временем.
opts = setoptions(opts,varnames,'Type','datetime', ... 'FillValue',datetime('now'));
Импортируйте данные даты и времени в выбранные переменные и просмотрите первые восемь строк. Импортированные данные показывают, что переменные имеют datetime тип данных. Отсутствующее значение во второй строке RestorationTime переменная заполняется текущей датой и временем.
opts.SelectedVariableNames = varnames; T = sqlread(conn,tablename,opts); head(T)
ans=8×2 table
OutageTime RestorationTime
____________________ ____________________
01-Feb-2002 12:18:00 07-Feb-2002 16:50:00
23-Jan-2003 00:49:00 19-Jun-2018 15:30:14
07-Feb-2003 21:15:00 17-Feb-2003 08:14:00
06-Apr-2004 05:44:00 06-Apr-2004 06:10:00
16-Mar-2002 06:18:00 18-Mar-2002 23:23:00
18-Jun-2003 02:49:00 18-Jun-2003 10:54:00
20-Jun-2004 14:39:00 20-Jun-2004 19:16:00
06-Jun-2002 19:28:00 07-Jun-2002 00:51:00
Удалить outages таблицы базы данных с использованием execute функция.
sqlquery = ['DROP TABLE ' tablename];
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Настройка параметров импорта при импорте данных категориального массива из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта для столбцов базы данных, содержащих данные категориального массива. Импорт данных с помощью sqlread функция.
В этом примере используется outages.csv файл, содержащий столбцы Region и Cause. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Загрузите информацию об отключении в рабочую область MATLAB ®.
outages = readtable('outages.csv');Создать outages таблицу базы данных с использованием информации об отключении.
tablename = 'outages';
sqlwrite(conn,tablename,outages)Создание SQLImportOptions с использованием outages таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,tablename);
Получение параметров импорта по умолчанию для Region и Cause переменные.
varnames = {'Region','Cause'};
varOpts = getoptions(opts,varnames)varOpts =
1x2 SQLVariableImportOptions array with properties:
Variable Options:
(1) | (2)
Name: 'Region' | 'Cause'
Type: 'char' | 'char'
FillValue: '' | ''
To access sub-properties of each variable, use getoptions
Задайте параметры импорта для типа данных указанных переменных как categorical. Также задайте параметры импорта, чтобы заменить отсутствующие данные в указанных переменных значением заливки unknown.
opts = setoptions(opts,varnames,'Type','categorical', ... 'FillValue','unknown');
Импорт данных категориального массива в выбранные переменные и отображение сводки данных. Импортированные данные показывают, что переменные имеют categorical тип данных. Отсутствующие значения обеих переменных заполняются значением unknown.
opts.SelectedVariableNames = varnames; T = sqlread(conn,tablename,opts); summary(T)
Variables:
Region: 1468×1 categorical
Values:
MidWest 142
NorthEast 557
SouthEast 389
SouthWest 26
West 354
unknown 0
Cause: 1468×1 categorical
Values:
attack 294
earthquake 2
energy emergency 188
equipment fault 156
fire 25
severe storm 338
thunder storm 201
unknown 24
wind 95
winter storm 145
Удалить outages таблицы базы данных с использованием execute функция.
sqlquery = ['DROP TABLE ' tablename];
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Настройка параметров импорта при импорте логических данных из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта для столбцов базы данных, содержащих логические данные. Импорт данных с помощью sqlread функция.
В этом примере используется airlinesmall_subset.xls электронная таблица, содержащая столбец Cancelled. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Загрузите информацию о полете в рабочее пространство MATLAB ®.
flights = readtable('airlinesmall_subset.xlsx');Создать flights таблицу базы данных с использованием полетной информации.
tablename = 'flights';
sqlwrite(conn,tablename,flights)Создание SQLImportOptions с использованием flights таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,'flights');Получение параметров импорта по умолчанию для Cancelled переменная.
varnames = 'Cancelled';
varOpts = getoptions(opts,varnames)varOpts =
SQLVariableImportOptions with properties:
Variable Properties :
Name: 'Cancelled'
Type: 'double'
FillValue: NaN
Задайте параметры импорта для типа данных указанной переменной как logical. Также задайте параметры импорта для замены отсутствующих данных в указанной переменной значением заливки true.
opts = setoptions(opts,varnames,'Type','logical', ... 'FillValue',true);
Импортируйте логические данные в выбранной переменной и просмотрите сводку данных. Импортированные данные показывают, что переменная имеет logical тип данных.
opts.SelectedVariableNames = varnames; T = sqlread(conn,tablename,opts); summary(T)
Variables:
Cancelled: 1338×1 logical
Values:
True 29
False 1309
Удалить flights таблицы базы данных с использованием execute функция.
sqlquery = 'DROP TABLE flights';
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
Настройка параметров импорта при импорте данных из таблицы базы данных. Управление параметрами импорта путем создания SQLImportOptions объект. Затем настройте параметры импорта, чтобы исключить отсутствующие данные. Импорт данных с помощью sqlread функция.
В этом примере используется outages.csv файл, содержащий данные об отключении. В примере также используется база данных Microsoft ® SQL Server ® Version 11.00.2100 и 11.00.5058 драйверов Microsoft SQL Server.
Создайте подключение базы данных к базе данных Microsoft SQL Server с проверкой подлинности Windows ®. Укажите пустое имя пользователя и пароль.
datasource = "MS SQL Server Auth"; conn = database(datasource,"","");
Загрузите информацию об отключении в рабочую область MATLAB ®.
outages = readtable("outages.csv");Создать outages таблицу базы данных с использованием информации об отключении.
tablename = "outages";
sqlwrite(conn,tablename,outages)Создание SQLImportOptions с использованием outages таблицу базы данных и databaseImportOptions функция.
opts = databaseImportOptions(conn,tablename);
Определение размера outages.
size(outages)
ans = 1×2
1468 6
Задайте параметры импорта для пропуска строк с отсутствующими данными в Customers переменная.
varnames = "Customers"; opts = setoptions(opts,varnames,'MissingRule',"omitrow");
Импортируйте данные и просмотрите первые восемь строк. Импортированные данные не содержат отсутствующих данных в Customers переменная.
T = sqlread(conn,tablename,opts); head(T)
ans=8×6 table
Region OutageTime Loss Customers RestorationTime Cause
___________ _________________________ ______ __________ _________________________ _________________
'SouthWest' '2002-02-01 12:18:00.000' 458.98 1.8202e+06 '2002-02-07 16:50:00.000' 'winter storm'
'SouthEast' '2003-01-23 00:49:00.000' 530.14 2.1204e+05 '' 'winter storm'
'SouthEast' '2003-02-07 21:15:00.000' 289.4 1.4294e+05 '2003-02-17 08:14:00.000' 'winter storm'
'West' '2004-04-06 05:44:00.000' 434.81 3.4037e+05 '2004-04-06 06:10:00.000' 'equipment fault'
'MidWest' '2002-03-16 06:18:00.000' 186.44 2.1275e+05 '2002-03-18 23:23:00.000' 'severe storm'
'West' '2003-06-18 02:49:00.000' 0 0 '2003-06-18 10:54:00.000' 'attack'
'NorthEast' '2003-07-16 16:23:00.000' 239.93 49434 '2003-07-17 01:12:00.000' 'fire'
'MidWest' '2004-09-27 11:09:00.000' 286.72 66104 '2004-09-27 16:37:00.000' 'equipment fault'
Определение размера T. Число строк в импортированных данных меньше, поскольку программа удаляет все строки с отсутствующими данными в Customers переменная.
size(T)
ans = 1×2
1140 6
Удалить outages таблицы базы данных с использованием execute функция.
sqlstr = "DROP TABLE ";
sqlquery = strcat(sqlstr,tablename);
execute(conn,sqlquery)Закройте подключение к базе данных.
close(conn)
opts - Параметры импорта базы данныхSQLImportOptions объектПараметры импорта базы данных, указанные как SQLImportOptions объект.
varnames - Имена переменныхИмена переменных, определяемые как вектор символов, массив ячеек векторов символов, строковый скаляр, строковый массив или числовой вектор. varnames входной аргумент указывает переменные в VariableNames имущества SQLImportOptions для импорта данных.
Пример: 'productname'
Типы данных: double | char | string | cell
index - ИндексИндекс, заданный как числовой вектор, определяющий переменные в VariableNames имущества SQLImportOptions для импорта данных.
Пример: [1,2,3]
Типы данных: double
Option1,OptionValue1,...,OptionN,OptionValueN - Параметры импортаПараметры импорта, указанные как один или несколько аргументов пары имя-значение. Option - символьный вектор или строковый скаляр, указывающий имя опции импорта. OptionValue задает значение параметра импорта.
Пример: 'FillValue',true,'Type','logical' устанавливает тип данных указанной переменной как logical и устанавливает значение заполнения для отсутствующих данных в указанной переменной как true.
Пример:
'Name',"Location" изменяет имя указанной переменной на Location.
Можно задать параметры импорта, чтобы изменить значение отсутствующих данных, имя переменной или тип данных переменной. Эти параметры импорта применяются ко всем переменным, указанным в varnames или index входной аргумент.
| Имя параметра импорта | Описание | Импорт значений опций |
|---|---|---|
'FillValue' | Отсутствует значение данных | Значение должно быть скаляром для одной переменной или массивом ячеек для нескольких переменных. Допустимые типы данных:
Тип данных зависит от типа переменной в базе данных. |
'MissingRule' | Отсутствует правило данных | Значение должно быть одним из следующих:
Эти значения можно указать как вектор символа или скаляр строки. Установка |
'Name' | Имя переменной | Значение должно быть символьным вектором или строковым скаляром для одной переменной или массивом ячеек символьных векторов или строковым массивом для нескольких переменных. |
'Type' | Тип данных | Значение должно быть символьным вектором или строковым скаляром для одной переменной или массивом ячеек символьных векторов или строковым массивом для нескольких переменных. |
В следующей таблице описаны допустимые значения параметров импорта для 'Type' параметр импорта. В первом столбце показаны типы данных в VariableTypes имущества SQLImportOptions объект. Второй столбец показывает допустимые типы данных для указания в символьном векторе. Чтобы использовать допустимое значение типа данных, заключите его в кавычки (например, 'single').
| Тип данных переменной | Допустимые значения типа данных для 'Type' Параметр импорта |
|---|---|
|
Неопределенные числа с плавающей запятой
Для получения более подробной информации см. Такое же преобразование применяется ко всем целочисленным классам. |
logical |
|
char или string |
Вы можете изменить |
datetime |
|
duration |
|
categorical |
|
Можно задать параметры импорта для изменения значения переменных с помощью текстового типа данных. Эти параметры импорта применяются к переменным, которые являются либо символьными векторами, либо строковыми массивами, указанными либо varnames или index входной аргумент. Значения опций импорта можно указать как вектор символа или скаляр строки.
| Имя параметра импорта | Описание | Импорт значений опций |
|---|---|---|
'WhiteSpaceRule' | Начальные и конечные пробелы |
|
'TextCaseRule' | Текстовый регистр |
|
datetime Тип данныхМожно задать параметры импорта для изменения значения переменных с помощью datetime тип данных. Эти параметры импорта применяются к переменным с помощью datetime тип данных, указанный либо varnames или index входной аргумент.
| Имя параметра импорта | Описание | Импорт значений опций | Значение опции импорта по умолчанию |
|---|---|---|---|
'DatetimeFormat' | Формат отображения дат и времени | Допустимые значения см. в описании | 'default' |
'DatetimeLocale' | Языковой стандарт, используемый для интерпретации дат | Допустимые значения см. в описании | 'en-US' |
'TimeZone' | Часовой пояс | Допустимые значения см. в описании | '' |
'InputFormat' | Формат входного текста, представляющего даты и время | Допустимые значения см. в описании infmt входной аргумент в datetime функция. | 'yyyy-MM-dd HH:mm:ss.SSSSSSSSS' |
duration Тип данныхМожно задать параметры импорта для изменения значения переменных с помощью duration тип данных. Эти параметры импорта применяются к переменным с помощью duration тип данных, указанный либо varnames или index входной аргумент.
| Имя параметра импорта | Описание | Импорт значений опций | Значение опции импорта по умолчанию |
|---|---|---|---|
'InputFormat' | Формат входного текста, представляющего время | Допустимые значения см. в описании infmt входной аргумент в duration функция. | '' |
'DurationFormat' | Формат отображения времени | Допустимые значения см. в описании Format свойство в duration функция. | 'hh:mm:ss' |
categorical Тип данныхМожно задать параметры импорта для изменения значения переменных с помощью categorical тип данных. Эти параметры импорта применяются к переменным с помощью categorical тип данных, указанный либо varnames или index входной аргумент.
| Имя параметра импорта | Описание | Импорт значений опций | Значение опции импорта по умолчанию |
|---|---|---|---|
'Categories' | Ожидаемые категории | Допустимые значения см. в описании | {} |
'Protected' | Индикатор защиты категории | Допустимые значения см. в описании | false |
'Ordinal' | Математический индикатор упорядочения | Допустимые значения см. в описании | false |
Типы данных: char | string
close | database | databaseImportOptions | execute | getoptions | preview | reset | sqlread | sqlwrite
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.