spreadsheetDatastore
数据存储电子表格文件
描述
使用一个spreadsheetDatastore
对象来管理大型电子表格文件的集合,集合不一定适合在内存中。您可以创建一个spreadsheetDatastore
对象使用spreadsheetDatastore
函数,指定它的属性,然后使用对象导入数据功能。
创建
描述
输入参数
位置
- - - - - -文件或文件夹包含在数据存储中
文件集
对象|文件路径|DsFileSet
对象
文件或文件夹包括在数据存储中,指定为一个文件集
对象,如文件路径,或者作为一个DsFileSet
对象。
文件集
对象,您可以指定位置
作为一个文件集
对象。作为一个指定位置文件集
数据存储对象会导致更快的建设时间相比,或指定一个路径DsFileSet
对象。有关更多信息,请参见matlab.io.datastore.FileSet
。文件路径,您可以指定一个文件路径作为特征向量或字符串标量。您可以指定多个文件路径作为一个单元阵列特征向量或一个字符串数组。
DsFileSet
对象,您可以指定一个DsFileSet
对象。有关更多信息,请参见matlab.io.datastore.DsFileSet
。
文件或文件夹可能是本地或远程:
本地文件或文件夹-指定本地文件或文件夹路径。如果文件不在当前文件夹,然后指定完整或相对路径。指定文件夹的子文件夹内文件不会自动包含在数据存储中。您可以使用通配符(*)时指定的本地路径。这个角色指定数据存储包括所有匹配的文件或匹配所有文件文件夹。
远程文件或文件夹-指定完整路径远程文件或文件夹作为一个统一资源定位符(URL)的形式
hdfs: / / /
。有关更多信息,请参见使用远程数据。path_to_file
指定一个文件夹时,数据存储只包含文件支持的文件格式和忽略任何其他格式的文件。万博1manbetx指定一个自定义列表的文件扩展名,包括数据存储,看到FileExtensions
财产。
的spreadsheetDatastore
函数支持扩展的文件万博1manbetx:xls
,.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,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:ssd = spreadsheetDatastore (“C: \ dir \ spreadsheetdata”、“FileExtensions”(“xls”、“.xlsm”))
FileExtensions
- - - - - -电子表格文件扩展名
特征向量|单元阵列的特征向量|字符串标量|字符串数组
电子表格文件扩展名,指定为名称参数组成的“FileExtensions”
一个特征向量,单元阵列特征向量,标量字符串或字符串数组。
如果你不指定
“FileExtensions”
,然后spreadsheetDatastore
自动包括所有文件xls
,.xlsx
,.xlsm
,.xltx
,.xltm
在指定的路径扩展。如果你想包括电子表格与非标准的文件扩展名
SpreadsheetDatastore
,然后显式地指定这些扩展。如果你想创建一个
SpreadsheetDatastore
没有扩展名的文件,然后指定“FileExtensions”
作为一个空的特征向量,”
。
例子:“FileExtensions”、“
例子:“FileExtensions”、“xls”
例子:“FileExtensions”(“.xlsx”、“.xlsm”)
数据类型:字符
|细胞
|字符串
IncludeSubfolders
- - - - - -子文件夹包含国旗
真正的
或假
|0或1
子文件夹包含标志,指定为名称参数组成的“IncludeSubfolders”
和真正的
,假
0或1。指定真正的
包括每个文件夹内的所有文件和子文件夹假
只包括每个文件夹内的文件。
如果你不指定“IncludeSubfolders”
,那么默认值是假
。
例子:“IncludeSubfolders”,真的
数据类型:逻辑
|双
OutputType
- - - - - -输出数据类型
“汽车”
(默认)|“表”
|“时间表”
AlternateFileSystemRoots
- - - - - -替代的文件系统根路径
字符串向量|单元阵列
替代的文件系统根路径,指定为名称参数组成的“AlternateFileSystemRoots”
和一个字符串向量或一个单元阵列。使用“AlternateFileSystemRoots”
当您创建一个数据存储在本地机器上,但需要在另一台机器上访问和处理数据(可能是不同的操作系统)。另外,当处理数据使用并行计算工具箱™和MATLAB®并行服务器™,数据存储在您的本地机器复制的数据在不同的平台上云或集群机器,您必须使用“AlternateFileSystemRoots”
把根路径。
把一组相当于一根路径,指定
“AlternateFileSystemRoots”
作为字符串向量。例如,[" Z: \数据集”、“/ mynetwork /数据集”)
把多个根集数据存储路径是等价的,指定
“AlternateFileSystemRoots”
作为一个单元阵列包含多个行,每一行表示一组等价的根路径。指定单元阵列中的每一行作为一个字符串向量或单元阵列的特征向量。例如:指定
“AlternateFileSystemRoots”
作为一个字符串向量的单元阵列。{[Z: \“数据集”、“/ mynetwork /数据集”);…[" Y: \数据集”、“/ mynetwork2 /数据集”、“年代:\数据集”)}
另外,指定
“AlternateFileSystemRoots”
作为一个单元阵列单元阵列的特征向量。{{“Z: \数据集”、“mynetwork /数据集”},…{“Y: \数据集”,“mynetwork2 /数据集”,年代:\数据集的}}
的价值“AlternateFileSystemRoots”
必须满足以下条件:
包含一个或多个行,每一行指定一组等价的根路径。
每一行指定多个根路径和每个根路径必须包含至少两个字符。
根路径都是独一无二的,没有子文件夹。
包含至少一个根路径条目指向文件的位置。
有关更多信息,请参见为处理在不同的机器上或设置数据存储集群。
例子:[" Z: \数据集”、“/ mynetwork /数据集”)
数据类型:字符串
|细胞
TextType
- - - - - -输出文本变量的数据类型
“字符”
(默认)|“字符串”
输出文本变量的数据类型,指定为名称参数组成的“TextType”
,要么“字符”
或“字符串”
。
如果输出表的
读
,readall
,或预览
函数包含文本变量“TextType”
指定数据类型的变量。如果
“TextType”
是“字符”
,然后输出单元阵列的特征向量。如果
“TextType”
是“字符串”
,然后输出类型字符串
。
数据类型:字符
|字符串
除了这些名称-值对,您还可以指定属性的名称-值对(除了这个页面文件
属性)。
属性
SpreadsheetDatastore
属性描述的格式文件数据存储对象,和控制如何从数据库读取数据。除了文件
属性,你可以指定的值SpreadsheetDatastore
当您创建属性使用名称-值对参数数据存储对象。查看或修改属性在创建对象时,使用点符号:
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)
数据类型:字符
|细胞
|字符串
|双
范围
- - - - - -行和列的范围
”“
(默认)|特征向量|字符串标量
行和列,指定为一个特征向量或字符串标量,它定义了一个矩形块的数据表。空的特征向量”
表明文件的范围是开始和结束的数据。
例子:“B1: T7”
例子:“C:”
数据类型:字符
|字符串
ReadVariableNames
- - - - - -指标用于读取变量名
真正的
(默认)|假
|1
|0
指标用于读取第一行的第一个文件数据存储作为变量名,指定为真正的
(1
)或假
(0
)。
如果
真正的
,那么第一nonheader行第一个文件确定数据的变量名。如果
假
,然后第一个nonheader排第一个文件包含数据的第一行。默认的变量名称被分配Var1
,Var2
,等等。
数据类型:逻辑
|双
VariableNamingRule
- - - - - -国旗保存变量名
“修改”
(默认)|“保存”
国旗保存变量名称,指定为“修改”
或“保存”
。
“修改”
——转换无效变量名(如决定的isvarname
MATLAB函数)来有效的标识符。“保存”
——保存变量名是无效的MATLAB标识符,如变量名,包括空间和非ascii字符。
从R2019b,变量名和行名称可以包含任何字符,包括空格和非ascii字符。同时,他们不仅可以从任何字符,字母。变量和行名称不需要有效的MATLAB标识符(如决定的isvarname
功能)。保存这些变量名和行名称,设置的值VariableNamingRule
来“保存”
。变量名不刷新时的价值VariableNamingRule
改变从“修改”
来“保存”
。
数据类型:字符
|字符串
VariableNames
- - - - - -变量的名字
特征向量|单元阵列的特征向量|字符串标量|字符串数组
数据存储变量的名称,指定为一个特征向量,单元阵列的特征向量,标量字符串或字符串数组。指定变量名在它们出现的顺序文件。如果你不指定变量名称,数据存储从第一nonheader行检测他们在第一个文件。您可以指定VariableNames
特征向量或字符串标量,然而数据存储转换和存储单元阵列的属性值的特征向量。当修改VariableNames
属性,新变量名称必须匹配的数量的原始变量名。
支持无万博1manbetx效MATLAB标识符作为变量名,如变量名称包含空格和非ascii字符,设置的值VariableNamingRule
参数“保存”
。
如果ReadVariableNames
是假
,然后VariableNames
默认为[" Var1”、“Var2”…]
。
例子:“时间”,“日期”,“数量”)
数据类型:字符
|细胞
|字符串
VariableTypes
- - - - - -变量类型
“替身”
|“字符”
|“字符串”
|“分类”
|“datetime”
变量类型,指定为“替身”
,“字符”
,“字符串”
,“分类”
,或“datetime”
每个变量的类型,这表明当阅读数据。
变量类型的列表对应的变量VariableNames
。类型双
,字符
,datetime
可以自动检测到的数据。您可以指定VariableTypes
然而,作为一个特征向量或字符串标量spreadsheetDatastore
自动将其转换为一个单元阵列特征向量或一个字符串数组。
例子:(“字符”、“分类”)
数据类型:字符
|细胞
|字符串
属性预览
,读
,readall
表
SelectedVariableNames
- - - - - -变量来读
特征向量|单元阵列的特征向量|字符串标量|字符串数组
变量来读取这个文件,指定为一个特征向量,单元阵列的特征向量,标量字符串或字符串数组。向量的每个字符或字符串包含一个变量的名称。你可以在任何顺序指定变量名。您可以指定SelectedVariableNames
然而,与一个特征向量或字符串标量spreadsheetDatastore
自动将其转换为一个单元阵列特征向量或一个字符串数组。
支持无万博1manbetx效MATLAB标识符作为变量名,如变量名称包含空格和非ascii字符,设置的值VariableNamingRule
参数“保存”
。
例子:[" Var3”、“Var7”、“Var4”)
数据类型:字符
|细胞
|字符串
SelectedVariableTypes
- - - - - -选择变量类型
“替身”
|“字符”
|“字符串”
|“分类”
|“datetime”
选择变量类型,指定为“替身”
,“字符”
,“字符串”
,“分类”
,或“datetime”
,这表明每个选定的类型变量时,读取数据。变量类型的列表对应的变量SelectedVariableNames
。类型双
,字符
,datetime
可以自动检测到的数据。您可以指定SelectedVariableTypes
作为一个特征向量或字符串标量,然而它是自动转化为特征向量的细胞数组或字符串数组。
例子:(“双”、“datetime”)
数据类型:字符
|细胞
|字符串
ReadSize
- - - - - -读取的数据量
“文件”
(默认)|“表”
|正整数标量
读取的数据量在一个调用读
函数,指定为“文件”
或“表”
,或者是一个正整数标量。
如果
ReadSize
是“文件”
,那么每次调用读
一次读取一个文件的所有数据。如果
ReadSize
是“表”
,那么每次调用读
一次读取一个表的所有数据。如果
ReadSize
是一个正整数,那么每次调用读
读取指定的行ReadSize
或更少,如果达到最终的数据。
当你改变ReadSize
从一个整数标量“文件”
或“表”
,或者相反,数据存储重置使用重置
函数。
数据类型:字符
|字符串
|双
RowTimes
- - - - - -行乘以变量的名称
变量名|变量指数
行乘以变量名称指定为名称参数组成的“RowTimes”
和一个变量名(如“日期”
)或一个变量(如索引3
)。
RowTimes
是一个timetable-related参数。每一行的时间表与时间有关,这是在一次向量的时间表。中指定的变量RowTimes
必须包含一个datetime
或者一个持续时间
向量。
如果该值的“OutputType”
是“时间表”
,但你不指定“RowTimes”
,然后spreadsheetDatastore
使用第一个datetime
或持续时间
变量的行乘以时间表。
使用的属性writeall
文件夹
- - - - - -文件夹用于构建数据存储
单元阵列的特征向量
这个属性是只读的。
用于构建数据存储文件夹,作为特征向量的单元阵列返回。单元阵列是面向一个列向量。每个字符向量是通往一个文件夹,其中包含的数据文件。的位置
论点的spreadsheetDatastore
和数据存储
函数定义文件夹
创建数据存储时。
的文件夹
当你修改属性重置文件
财产的SpreadsheetDatastore
对象。
数据类型:细胞
万博1manbetxSupportedOutputFormats
- - - - - -写作格式支持万博1manbetx
字符串行向量
这个属性是只读的。
格式支持写作,作万博1manbetx为一个行向量的字符串返回。这个属性指定了使用时可能的输出格式writeall
写输出文件的数据存储。
DefaultOutputFormat
- - - - - -默认的输出格式
字符串标量
对象的功能
hasdata |
确定数据可用来读 |
numpartitions |
数量的数据存储分区 |
分区 |
分区数据存储 |
预览 |
预览数据存储中数据的子集 |
读 |
在数据存储中读取数据 |
readall |
读取所有数据存储中的数据 |
writeall |
写数据存储文件 |
重置 |
数据存储重置为初始状态 |
sheetnames |
从数据存储查询的表名 |
变换 |
变换数据存储 |
结合 |
合并来自多个数据存储的数据 |
isPartitionable |
确定是否可分区的数据存储 |
isSubsettable |
确定是否subsettable数据存储 |
isShuffleable |
确定是否shuffleable数据存储 |
例子
创建SpreadsheetDatastore对象
创建一个spreadsheetDatastore对象使用一个文件集对象或文件路径。
创建一个文件集对象。创建一个spreadsheetDatastore对象。
fs = matlab.io.datastore.FileSet (“airlinesmall_subset.xlsx”);ssd = spreadsheetDatastore (fs)
ssd与属性= SpreadsheetDatastore:文件:{“…\ \ MATLAB文件\ \ airlinesmall_subset例子。xlsx’}文件夹:{”……\ \ MATLAB文件\例子”}AlternateFileSystemRoots:{}表:“范围:”表的格式属性:NumHeaderLines: 0 VariableNamingRule:“修改”ReadVariableNames:真VariableNames:{“年”、“月”、“DayofMonth”……和26}VariableTypes:{“双”、“双”、“双”……和26}属性控制表返回的预览,阅读,readall: SelectedVariableNames:{“年”、“月”、“DayofMonth”……和26}SelectedVariableTypes:{“双”、“双”、“双”……和26}ReadSize:‘文件’OutputType:“表”RowTimes:[]编写特殊属性:SupportedOutputFormats:[“三种”“csv”“xlsx”“x万博1manbetxls”“铺”“parq”] DefaultOutputFormat:“xlsx”
此外,您可以指定您的数据文件路径。
ssd = spreadsheetDatastore (“airlinesmall_subset.xlsx”);
读取电子表格文件
创建一个SpreadsheetDatastore
对象包含文件airlinesmall_subset.xlsx
。
ssd = spreadsheetDatastore (“airlinesmall_subset.xlsx”)
ssd与属性= SpreadsheetDatastore:文件:{“…\ \ MATLAB文件\ \ airlinesmall_subset例子。xlsx’}文件夹:{”……\ \ MATLAB文件\例子”}AlternateFileSystemRoots:{}表:“范围:”表的格式属性:NumHeaderLines: 0 VariableNamingRule:“修改”ReadVariableNames:真VariableNames:{“年”、“月”、“DayofMonth”……和26}VariableTypes:{“双”、“双”、“双”……和26}属性控制表返回的预览,阅读,readall: SelectedVariableNames:{“年”、“月”、“DayofMonth”……和26}SelectedVariableTypes:{“双”、“双”、“双”……和26}ReadSize:‘文件’OutputType:“表”RowTimes:[]编写特殊属性:SupportedOutputFormats:[“三种”“csv”“xlsx”“x万博1manbetxls”“铺”“parq”] DefaultOutputFormat:“xlsx”
显示表名称的文件。该文件包含一个表。
sheetnames (ssd, 1)
ans =13 x1字符串“1996”“1997”“1998”“1999”“2000”“2001”“2002”“2003”“2004”“2005”“2006”“2007”“2008”
指定的变量FlightNum
在第二个表感兴趣的数据,和预览前八行。
ssd。表= 2;ssd。SelectedVariableNames =“FlightNum”;预览(ssd)
ans =8×1表FlightNum _____ 1014 1201 702 1184 1310 1759 1242 1558
只读变量的前三行DepTime
和ArrTime
在第一单。
ssd。ReadSize = 3;ssd。表= 1;ssd。SelectedVariableNames = [“DepTime”,“ArrTime”];阅读(ssd)
ans =3×2表DepTime ArrTime _________ 2117 2305 1252 1511 1441 1708
阅读所有的表4、5、6。
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。北海道岛”}6.5 - 2.7 2 33 1 04 - mar - 1952 01:22:41.000自1958年7月10 - 58.34 - -136.52 4{“明确的海啸”}3 8.3{地震和山体滑坡的}{‘美国’}{SE。阿拉斯加,正义与发展党’}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{“明确的海啸”}3 9.2{地震和山体滑坡的}{‘美国’}{‘威廉王子湾,正义与发展党’}67 6.1 221 3 28 - mar - 1964 03:36:14.000 16 - 1964年6月- 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 - 3月- 1952年7月10 - 58.34 - -136.52 - 1958 06:15:53.600 4{“明确的海啸”}3 8.3{地震和山体滑坡的}{‘美国’}{SE。阿拉斯加,正义与发展党’}524.26 - 4.6 5 5 1 10——1958年7月22日——1960年5月——19:11:17.000 -39.5 - -74.5 4{“明确的海啸”}1 9.5{‘地震’}{“智利”}{智利中部的}25 4.6 - 4 1260 3 1960年- 1960年5月- 11月20 - 22日22:01:56.400 -6.8 - -80.7 4{“明确的海啸”}1 6.8{‘地震’}{秘鲁的}{秘鲁的}9 3.2 2.5 66 2 20 - 1964年11月- 1960年3月28 - - 03:36:14.000 61.1 - -147.5 4{“明确的海啸”}3 9.2{地震和山体滑坡的}{‘美国’}{‘威廉王子湾,正义与发展党’}67 6.1 221 3 28 - mar - 1964 16 - 1964年6月——04:01:44.300 38.65 - 139.2 4{“明确的海啸”}1 7.5{‘地震’}{‘日本’}{西北。本州岛”}5.8 - 2.7 2 26 1 16 - 1968年6月- 1964年8月14 - - 22:14:19.400 0.2 - 119.8 4{“明确的海啸”}1 7.8{‘地震’}{“印度尼西亚”}{“班达海”}200 3 14 - 3.3 - 3 1969年8月- 1968年2月23 - - 00:36:56.600 -3.1 - 118.9 4{“明确的海啸”}1 6.9{‘地震’}{“印度尼西亚”}{“望加锡海峡”}4 2 2 600 3 1969年- 2月23日
版本历史
介绍了R2016a
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup万博1manbetxportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。