电子表格文件的数据存储
用一个SpreadsheetDatastore
对象管理集合不一定适合内存的大量电子表格文件集合。你可以创建一个SpreadsheetDatastore
对象使用spreadsheetDatastore
函数,指定其属性,然后使用对象函数导入数据。
地点
- - - - - -在数据存储区中包含文件或文件夹DsFileSet
对象数据存储中包含的文件或文件夹,指定为路径或aDsFileSet
目的。
路径 - 将路径指定为字符向量,字符向量,字符串标量或字符串数组的单元格数组,其中包含本地或远程的文件或文件夹的位置。
本地文件或文件夹 - 指定地点
作为文件或文件夹的本地路径。如果文件不在当前文件夹中,则本地路径必须指定完整或相对路径。指定文件夹的子文件夹中的文件不会自动包含在数据存储区中。指定本地路径时,可以使用通配符(*)。此字符指定数据存储区包括匹配文件夹中的所有匹配文件或所有文件。
远程文件或文件夹 - 指定地点
成为文件或文件夹的完整路径,作为表单的统一资源定位器(URL)HDFS:/// path_to_file
.有关更多信息,请参阅使用远程数据.
DsFileSet
对象 - 您也可以指定地点
作为一个DsFileSet
目的。有关更多信息,请参阅matlab.io.datastore.DsFileSet
.
什么时候地点
表示文件夹时,该数据存储只包含支持的文件格式,而忽略任何其他格式。金宝app要指定要包含在数据存储中的文件扩展名的自定义列表,请参阅FileExtensions
财产。
的spreadsheetDatastore
函数支持这些扩展:金宝appxls
,.xlsx.
,.xlsm.
,.xltx.
, 和.xltm.
.
例子:“file1.xlsx”
例子:“. . / dir /数据/ file1.xlsx”
例子:{“C: \ dir \ data \ file1.xlsx”,“C: \ dir \ data \ file2.xlsx”}
例子:s3: / / bucketname / path_to_files / * xls”
指定可选的逗号分隔的对名称,值
论点。姓名
参数名和价值
是相应的价值。姓名
必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen
.
SSD = SpepsheetDataStore('c:\ dir \ separsheetdata','fileextensions',{'。xls','。xlsm'})
'fileextensions'
- - - - - -电子表格文件扩展电子表格文件扩展名,指定为逗号分隔对,由'fileextensions'
和字符矢量,字符向量,字符串标量或字符串数组的字符矢量。
如果没有指定'fileextensions'
,然后spreadsheetDatastore
自动包括所有文件xls
,.xlsx.
,.xlsm.
,.xltx.
, 和.xltm.
指定路径中的扩展。
如果您想包含带有非标准文件扩展名的电子表格SpreadsheetDatastore
,然后明确指定这些扩展。
如果你想创建一个SpreadsheetDatastore
对于没有任何扩展名的文件,则指定'fileextensions'
作为一个空字符向量,”
.
例子:'fileextensions',''
例子:'fileextensions','。xls'
例子:FileExtensions,{‘.xlsx’,‘.xlsm}
数据类型:char
|细胞
|细绳
'insertumbfolders'
- - - - - -子文件夹包含标志真的
或者假
|0或1子文件夹包含标志,指定为逗号分隔的配对'insertumbfolders'
和真的
,假
,0或1.指定真的
将所有文件和子文件夹包含在每个文件夹或假
仅包含每个文件夹中的文件。
如果没有指定'insertumbfolders'
,则默认值为假
.
例子:'insertumubfolders',真实
数据类型:逻辑
|双倍的
“OutputType”
- - - - - -输出数据类型“汽车”
(默认)|'桌子'
|'时间表'
“AlternateFileSystemRoots”
- - - - - -备用文件系统根路径备用文件系统根路径,指定为逗号分隔对组成“AlternateFileSystemRoots”
字符串向量或单元格数组。使用“AlternateFileSystemRoots”
在本地计算机上创建数据存储,但需要访问和处理另一台计算机上的数据(可能是不同的操作系统)。此外,当使用并行计算工具箱™和该数据处理数据时马铃薯®并行服务器™,并且数据存储在本地机器上,在不同的平台云或集群机器上可以使用数据的副本“AlternateFileSystemRoots”
要关联根路径。
若要将一组相互等效的根路径关联起来,请指定“AlternateFileSystemRoots”
作为一个字符串向量。例如,
[" Z: \数据集”、“/ mynetwork /数据集”)
若要关联与该数据存储相同的多组根路径,请指定“AlternateFileSystemRoots”
作为包含多行的单元数组,其中每行代表一组等效根路径。将单元格数组中的每一行指定为字符串向量或字符向量的小区数组。例如:
指定“AlternateFileSystemRoots”
作为串向量的单元阵列。
{[“z:\ datasets”,“/ mynetwork / datasets”]; ... [y:\ datasets“,”/ mynetwork2 / datasets“,”s:\ datasets“]}
另外,指定“AlternateFileSystemRoots”
作为字符向量的单元阵列的单元阵列。
{{'z:\ datasets','/ mynetwork / datasets'}; ... {'y:\ datasets','/ mynetwork2 / datasets','s:\ datasets'}}
的价值“AlternateFileSystemRoots”
必须满足这些条件:
包含一个或多个行,其中每一行指定一组等价的根路径。
每行指定多个根路径,每个根路径必须至少包含两个字符。
根路径是唯一的,并且不是彼此的子文件夹。
包含至少一个指向文件位置的根路径条目。
有关更多信息,请参阅设置数据存储,以便在不同的机器或集群上进行处理.
例子:[" Z: \数据集”、“/ mynetwork /数据集”)
数据类型:细绳
|细胞
'texttype'
- - - - - -输出数据类型的文本变量“字符”
(默认)|'细绳'
文本变量的输出数据类型,指定为逗号分隔对,由'texttype'
和任何一种“字符”
或者'细绳'
.
如果输出表来自读
,readall
, 或者预览
函数包含文本变量,然后'texttype'
指定这些变量的数据类型。
如果'texttype'
是“字符”
,然后输出是字符向量的小区阵列。
如果'texttype'
是'细绳'
,则输出具有类型细绳
.
数据类型:char
|细绳
除了这些名称-值对之外,还可以将该页面上的任何属性指定为名称-值对(除了文件
属性)。
SpreadsheetDatastore
属性描述数据存储对象中文件的格式,并控制如何从数据存储中读取数据。除了文件
属性,您可以指定值SpreadsheetDatastore
使用名称值对参数创建数据存储对象时属性。要在创建对象后查看或修改属性,请使用dot表示法:
ds = spreadsheetDatastore ('airlinesmall_subset.xlsx');ds。张= [1 2];ds。范围='A1:C6';
文件
- - - - - -数据存储中包含的文件数据存储中包含的文件,被解析为字符向量或字符串数组的单元格数组,其中每个字符向量或字符串是文件的完整路径。的地点
争论在spreadsheetDatastore
和数据存储
函数定义这些文件。
单元格数组中指定的第一个文件确定数据存储中所有文件的变量名和格式信息。
例子:{'c:\ dir \ data \ file1.xls';'c:\ dir \ data \ file2.xls'}
数据类型:细胞
|细绳
numheaderlines.
- - - - - -跳过的线数0
(默认)|正整数读取时每张纸张开始时跳过的行数,指定为正整数。当您指定时范围
财产,numheaderlines.
在指定数据块的开始处要跳过的行数。
数据类型:双倍的
表
- - - - - -文件中的床单”
(默认)|表格名称|表格指数文件中的表格,指定为字符向量,字符向量,字符串标量或包含工作表名称的字符串数组的单元数组,或作为表索引的数字向量。空字符矢量”
表示包含文件中的所有工作表。
例子:{'sheet1','sheet7'}
例子:(3 5 7)
数据类型:char
|细胞
|细绳
|双倍的
范围
- - - - - -行和列边界”
(默认)|字符向量|字符串标量行和列边界,指定为定义工作表中的矩形数据块的字符向量或字符串标量。空字符矢量”
表示界限是文件的开头和数据的结尾。
例子:'B1:T7'
例子:“C:”
数据类型:char
|细绳
readvariablenames.
- - - - - -用于读取变量名的指示符真的
(默认)|假
|1
|0
将数据存储中第一个文件的第一行作为变量名读取的指示符,指定为任意一种真的
(1
)或假
(0
).
如果真的
,然后第一文件的第一个非主机行确定数据的变量名称。
如果假
,然后第一个文件的第一个非主机行包含第一行数据。默认变量名称被分配为var1
,var2
, 等等。
数据类型:逻辑
|双倍的
variablenamingrule.
- - - - - -标志以保留变量名称“修改”
(默认)|'保存'
标志以保留变量名称,指定为逗号分隔的配对组成variablenamingrule.
和任何一种“修改”
或者'保存'
.
“修改”
- 转换无效的变量名称(由此确定)isvarname.
功能)到有效的MATLAB标识符。
'保存'
- 保留不具有有效MATLAB标识符的变量名称,例如包含空格和非ASCII字符的变量名称。
从R2019b开始,变量名和行名可以包含任何字符,包括空格和非ascii字符。此外,它们可以以任何字符开头,而不仅仅是字母。变量和行名不一定是有效的MATLAB标识符(由isvarname.
功能)。要保留这些变量名称和行名称,请设置值variablenamingrule.
到'保存'
.
数据类型:char
|细绳
VariableNames
- - - - - -变量的名称数据存储区中的变量名称,指定为字符向量,字符向量,字符串标量或字符串数组的单元格数组。按顺序指定变量名称。如果未指定变量名称,则数据存储区将从第一个文件中的第一个非主线行检测到它们。您可以指定VariableNames
然而,具有字符向量或字符串标量,但数据存储区将属性值转换为字符向量的单元格数组。修改了VariableNames
属性时,新变量名的数量必须与原始变量名的数量匹配。
要支持金宝app无效的MATLAB标识符作为变量名称,例如包含空格和非ASCII字符的变量名称,请设置值variablenamingrule.
参数到'保存'
.
如果readvariablenames.
是假
,然后VariableNames
默认为{'var1','var2',...}
.
例子:{“时间”,“日期”,“数量”}
数据类型:char
|细胞
|细绳
VariableTypes
- - - - - -变量类型“双”
|“字符”
|'细绳'
|'分类'
|'约会时间'
变量类型,指定为“双”
,“字符”
,'细绳'
,'分类'
, 或者'约会时间'
,它在读取数据时表示每个变量的类型。
变量类型列表对应于变量VariableNames
.类型双倍的
,char
, 和约会时间
可以从数据自动检测到。您可以指定VariableTypes
但是作为字符向量或字符串标量spreadsheetDatastore
自动将其转换为字符向量或字符串数组的单元格数组。
例子:{'char','patporical'}
数据类型:char
|细胞
|细绳
预览
,读
,readall
桌子SelectedVariableNames
- - - - - -变量来读从文件中读取的变量,指定为字符向量,字符向量,字符串标量或字符串数组的单元格数组。每个字符向量或字符串包含一个变量的名称。您可以按任何顺序指定变量名称。您可以指定SelectedVariableNames
然而,有一个字符矢量或标量标量spreadsheetDatastore
自动将其转换为字符向量或字符串数组的单元格数组。
要支持金宝app无效的MATLAB标识符作为变量名称,例如包含空格和非ASCII字符的变量名称,请设置值variablenamingrule.
参数到'保存'
.
例子:{'var3','var7','var4'}
数据类型:char
|细胞
|细绳
selectedvariabletypes.
- - - - - -选定的变量类型“双”
|“字符”
|'细绳'
|'分类'
|'约会时间'
选定的变量类型,指定为“双”
,“字符”
,'细绳'
,'分类'
, 或者'约会时间'
,它在读取数据时表示每个所选变量的类型。变量类型列表对应于变量SelectedVariableNames
.类型双倍的
,char
, 和约会时间
可以从数据自动检测到。您可以指定selectedvariabletypes.
然而,作为字符向量或字符串标量,它会自动转换为字符向量或字符串数组的单元格数组。
例子:{“双”,“datetime”}
数据类型:char
|细胞
|细绳
阅读
- - - - - -要读取的数据量'文件'
(默认)|“表”
|正整数标量呼叫中读取的数据量读
函数,指定为'文件'
或者“表”
,或作为正整数标量。
如果阅读
是'文件'
,然后每次打电话读
一次读取所有数据一个文件。
如果阅读
是“表”
,然后每次打电话读
一次读取所有数据。
如果阅读
是一个积极的整数,然后每次打电话读
读取由此指定的行阅读
或者如果它达到数据的末尾,则更少。
当你改变阅读
从整数标量到'文件'
或者“表”
,或相反地,数据存储将使用重启
函数。
数据类型:char
|细绳
|双倍的
RowTimes
- - - - - -行次数变量的名称行次数变量的名称,指定为逗号分隔对'rowtimes'
和一个变量名称(例如“日期”
)或可变指数(例如3.
).
RowTimes
是与时间表相关的参数。时间表的每一行与时间相关联,该时间被捕获在时间向量的时间向量中。指定的变量RowTimes
必须包含一个约会时间
或者一个持续时间
向量。
如果是值“OutputType”
是'时间表'
,但您没有指定'rowtimes'
,然后SpreadsheetDatastore
使用第一个约会时间
或者持续时间
变量作为时间表的行时间。
writeall
文件夹
- - - - - -用于构造数据存储的文件夹此属性是只读的。
用于构造数据存储的文件夹,返回为字符向量的单元格数组。单元格数组被定向为列向量。每个字符向量都是指向包含数据文件的文件夹的路径。的地点
争论在spreadsheetDatastore
和数据存储
功能定义文件夹
创建数据存储时。
的文件夹
修改时,属性已重置文件
财产的SpreadsheetDatastore
目的。
数据类型:细胞
金宝app支持的upTutFormats.
- - - - - -写作支持的格式列表金宝appdefaultOutputFormat.
- - - - - -默认的输出格式ssd = spreadsheetDatastore ('airlinesmall_subset.xlsx')
SSDS =带有属性的SeperSheetDataStore:文件:{'... \ Documents \ Matlab \ examples \ Matlab-ex26030327 \ Airlinesmall_subset.xlsx'}文件夹:{'... \ Onedrive - Mathworks \ Documents \ Matlab \ examples \ Matlab-ex26030327'} lexeryfilesyroots:{}表:''范围:''表格格式属性:numheaderlines:0 variablenamingrule:0 variablenamingrule:'修改'readvariablenames:true variablenames:{'年','月','dayofmonth'...和26更多}variabletypes:{'double','double','double'...和26更多}控制通过预览,阅读,readall:selectedvariablenames:{'年','月','dayofmonth'...} SelectedVariableTypes: {'double', 'double', 'double'…ReadSize: 'file' OutputType: 'table' RowTimes: [] Write-specific Properties: SupportedOutp金宝apputFormats: ["txt" "csv" "xlsx" "xls" "parquet" "parq"] DefaultOutputFormat: "xlsx"
创建一个SpreadsheetDatastore
包含该文件的对象airlinesmall_subset.xlsx
.
ssd = spreadsheetDatastore ('airlinesmall_subset.xlsx')
ssd与属性= SpreadsheetDatastore:文件 : { ' .../ Bdoc21a_1606923_138131 / tp24405c6c ex29672123 / airlinesmall_subset.xlsx '}文件夹:{“/ tmp / Bdoc21a_1606923_138131 / tp24405c6c / ex29672123”}AlternateFileSystemRoots:{}表:“范围:”表的格式属性:NumHeaderLines: 0 VariableNamingRule:“修改”ReadVariableNames:true VariableNames: {'Year', 'Month', 'DayofMonth'…{'double', 'double', 'double'…控制由preview, read, readall返回的表的属性:SelectedVariableNames: {'Year', 'Month', 'DayofMonth'…} SelectedVariableTypes: {'double', 'double', 'double'…ReadSize: 'file' OutputType: 'table' RowTimes: [] Write-specific Properties: SupportedOutp金宝apputFormats: ["txt" "csv" "xlsx" "xls" "parquet" "parq"] DefaultOutputFormat: "xlsx"
显示文件的表名称。该文件每年包含一张纸。
sheetnames (ssd, 1)
Ans = 13x1 string array "1996" "1997" "1998" "1999" "2000" "2001" "2002" "2003" "2004" "2005" "2006" "2007" "2008"
指定变量FlightNum
在第二片作为感兴趣的数据中,并预览前八行。
ssds.sheets = 2;ssds.selectedvariablenames =.'flidentnum';预览(SSD)
ans = 8x1 table FlightNum _________ 1014 1201 702 1184 1310 1759 1242 1558
只读前三行变量DepTime
和arttime.
在第一张纸中。
ssds.readsize = 3;ssds.sheets = 1;ssds.selectedvariablenames = {“DepTime”,'Arr Time'};阅读(SSD)
ans = 3x2表Deptime Arration _______ _______ 2117 2305 1252 1511 1441 1708
把第四,第五,第六页都读一遍。
ssd。表= 4:6;readall (ssd);
使用OutputType
和RowTimes
名称 - 值对制作SpreadsheetDatastore
返回时间表而不是表格。
创建一个数据存储tsunamis_dated.xlsx
.指定“OutputType”
作为'时间表'
以便SpreadsheetDatastore
返回时间表而不是表。
ssd = spreadsheetDatastore (“tsunamis_dated.xlsx”,“OutputType”,'时间表');预览(SSD)
ans =.8×15时间表日期经度纬度ValidityCode有效性CauseCode引起EarthquakeMagnitude国家位置MaxHeight IidaMagnitude强度NumDeaths DescDeaths时间 ___________ ________ _________ ____________ ____________________ _________ ____________________________ ___________________ _____________ ____________________________ _________ ______________________ _________ __________ ________________________ 04 - mar - 1952 42.15 - 143.85 4{“明确的海啸”}1 8.1{‘地震’}{‘日本’}{SE。4{'明确的海啸'}3{'地震和滑坡'}3{'美国'}'SE阿拉斯加,AK} 524.26 4.6 - 5 5 1958 06:15:53.600 10 - 7月22日- 1960年5月- -39.5 - -74.5 4{“明确的海啸”}1 9.5{‘地震’}{“智利”}{智利中部的}25 4.6 - 4 1260 3 22日- 1960年5月- 1960年11月19:11:17.000 20 - - -6.8 - -80.7 4{“明确的海啸”}1 6.8{‘地震’}{秘鲁的}{秘鲁的}9 3.2 - 2.5 66 2 - 1960 22:01:56.400 11月20 - 28 - mar - 1964 61.1 -147.5 - 4{'确定海啸'}1{'地震'}7.5{'日本'}{'美国'}{'威廉王子海湾,AK'} 67 6.1 221 3 28-Mar-1964 03:36:14 000 16- june -1964 38.65 139.2 4{'确定海啸'}1{'地震'}7.5{'日本'}{'西北。本州岛}5.8 2.7 - 2 1 16 - 26日1968年6月- 1964 04:01:44.300 14 - 8月- 0.2 - 119.8 4{“明确的海啸”}1 7.8{‘地震’}{“印度尼西亚”}{“班达海”}10 3.3 3 200 1968 22:14:19.400 14 - 8月23日- 1969年2月- -3.1 - 118.9 4{“明确的海啸”}1 6.9{‘地震’}{“印度尼西亚”}{“望加锡海峡”}4 2 2 600 1969 00:36:56.600 23 - 2月
当你没有指定'rowtimes'
,spreadsheetDatastore
使用第一个DateTime或持续时间变量作为行次数。在这种情况下,日期
变量用于行时间。此数据有两个DateTime变量:日期
和时间
.的日期
变量不包括有关小时,分钟或秒的信息,而时间
变量具有每个事件的具体时间。
指定'rowtimes'
选项使用事件时间(时间
变量)作为行乘以。
ssd = spreadsheetDatastore (“tsunamis_dated.xlsx”,“OutputType”,'时间表','rowtimes',“时间”);预览(SSD)
ans =.8×15时间表时间纬度经度ValidityCode有效性CauseCode原因EarthquakeMagnitude国家区MaxHeight IidaMagnitude强度NumDeaths DescDeaths日期________________________ ________ _________ ____________ ____________________ _________ ____________________________ ___________________ _____________ ____________________________ _________ _____________ _________ _________ __________ ___________ 04-MAR-1952年01:22:41.000 42.15 143.85 4 { '明确的海啸'1 {'地震'} 8.1 {'日本'} {'se。北海道岛'} 6.5 2.7 2 33 1 04-Mar-1952 10-Jul-1958 06:15:53.600 58.34 -136.52 4 {'''''''''''''''''''''''''''''''''''''''''''''''''''''''-1958)06:15:53.600 58.34 -136.52 4 {'地震和Landslide'} 8.3 {'美国'} {''硒。阿拉斯加,AK'} 524.26 4.6 5 5 1 10-7月10日 - 1958年2月22日 - 5月1960年1960年1960年1960年:11:17.000 -39.5 -74.5 4 {'demanicate海啸'} 1 {'地震'} {'''中央智利'} 25 4.6 4 1260 3 22-5月1960年11月20日 - 11月20日 - 11月1960年22:01:56.400 -6.8 -80.7 4 {'Demanicate Tsunami'} 1 {'地震'} 6.8 {'Peru'} {'秘鲁'} 9 3.2 2.5 66 2 20-ov-1960 28-Mar-1964 03:36:14.000 61.1 -147.5 4 {'demanicate tsunami'} 3 {'地震和Landslide'} 9.2 {美国'} {'威廉王子王子Sound,AK'} 67 6.1 5 221 3 28-Mar-1964 16-Jun-1964 04:01:44.300 38.65 139.2 4 {'demanicate tsunami'} 1 {'地震'} 7.5 {日本'} {'nw。Honshu Island'} 5.8 2.7 2 26 1 16-Jun-1964 14-us- 1968年14〜1968年2月22:14:19.400 0.2 119.8 4 {'Demanicate Tsunami'} 1 {'地震'} 7.8 {'Adenonesia'} {'Banda Sea'} 10 3.3 3 200 3 14-1968 23-Feb-1969 00:36:56.600 -3.1 118.9 4 {'Demanicate Tsunami'} 1 {'地震'} 6.9 {Makassar Scritia'} 42 2 600 3 23-Feb-1969
您已经有了abgeänderte版本死亡Beispiels。Möchten您是谁? Änderungen öffnen?
Sie Haben AUF EINEN LINK GEKLICKT,DER DIESEM MATLAB-BEFEHL ONTSPRICHT:
Führensieden befehl Durch Eingabe在Das Matlab-Befehlsfenster Aus。WebBrowserUnterstützenKeineMatlab-Befehle。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。