mdfDatastore
MDF 文件集合的数据存储
说明
使用 MDF 数据存储对象可访问 MDF 文件集合中的数据。
创建对象
描述
根据 MDF 文件或 mdfds
= mdfDatastore(location
)location
指定的文件夹中的文件集合创建一个 MDF 数据存储。包含文件夹中扩展名为 .mdf
、.dat
或 .mf4
的所有文件。
使用可选的名称-值对组指定 mdfds
= mdfDatastore(__,Name=Value
,Name=Value
,...)mdfds
的函数选项和属性。
输入参量
location
— MDF 数据存储文件的位置
字符串 | 字符向量 | 元胞数组 | DsFileSet
对象
MDF 数据存储文件的位置,指定为字符串、字符向量、元胞数组或对象。
DsFileSet
对象 - 您可以指定一个DsFileSet
对象。有关详细信息,请参阅matlab.io.datastore.DsFileSet
。FileSet
对象 - 您可以将location
指定为FileSet
对象。与指定路径或DsFileSet
对象相比,将位置指定为FileSet
对象会加快数据存储的构造时间。有关详细信息,请参阅matlab.io.datastore.FileSet
。文件路径 - 您可以将单个文件路径指定为字符向量或字符串标量。您可以将多个文件路径指定为字符向量元胞数组或字符串数组。
该路径可以是相对路径或绝对路径,或指向远程服务器的 URL。
location
参量可以包含通配符*
。如果location
指定一个文件夹,则默认情况下,数据存储包含该文件夹中扩展名为.mdf
、.dat
或.mf4
的所有文件。您可以使用FileExtensions
参数来限制或扩展此列表。作为文件路径的
location
可以采用以下形式之一。数据位置
形式
当前文件夹或 MATLAB® 路径 要访问当前文件夹或 MATLAB 路径中的文件,请在
location
中指定文件或文件夹的名称。指定文件时包括扩展名。示例:
["myFile2.mf4","myFile3.mf4"]
示例:
"myDataFolder"
其他文件夹
要访问当前文件夹以外的文件夹中的文件,请在
location
中指定完整或相对路径名称。示例:
"C:\myFolder\myFile*.mf4"
示例:
"\myDataFolder"
远程位置
要访问远程位置的文件,
location
必须包含以统一资源定位器 (URL) 形式指定的文件或文件夹的完整路径:scheme
://path_to_location
根据远程位置,
可以是下表中的值之一。scheme
远程位置 scheme
Amazon S3™ s3
Windows Azure® Blob 存储 wasb
,wasbs
HDFS™ hdfs
有关详细信息,请参阅处理远程数据。
示例:
"s3://bucketname/path_to_file/myMdfData/"
数据类型: string
| char
| cell
| DsFileSet
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量后,但参量对组的顺序无关紧要。
这些对组设置文件信息或对象 属性。允许的选项有 IncludeSubfolders
、FileExtensions
以及属性 ReadRaw
、ReadSize
、SelectedChannelGroupNumber
和 SelectedChannelNames
。
在 R2021a 之前,需要使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: SelectedChannelNames="Counter_B4"
IncludeSubfolders
— 包含子文件夹中的文件
false
(默认) | true
包含子文件夹中的文件,指定为逻辑值。指定 true
可包含每个文件夹及其子文件夹中的文件。
示例: IncludeSubfolders=true
数据类型: logical
FileExtensions
— 要包含在 MDF 数据存储中的文件名的自定义扩展名
[".mdf",".dat",".mf4"]
(默认) | 字符串 | 字符 | 元胞
要包含在 MDF 数据存储中的文件名的自定义扩展名,指定为字符串、字符串数组、字符向量或字符向量元胞数组。默认情况下,支持的扩展名包括 .mdf
、.dat
和 .mf4
。如果您的文件具有自定义或非标准扩展名,请使用此“名称-值”设置来包含具有这些扩展名的文件。
示例: FileExtensions=[".myformat1",".myformat2"]
数据类型: char
| cell
属性
ChannelGroups
— 第一个 MDF 文件中存在的所有通道组
表
Channels
— 第一个 MDF 文件中存在的所有通道
表
此 属性 为只读。
第一个 MDF 文件中存在的所有通道,以表形式返回,该表的格式与 mdfChannelInfo
函数返回的格式相同。
MDF 数据存储的每个文件中要读取的那些通道必须具有相同的名称,并且属于同一通道组。
数据类型: table
Files
— 包含在数据存储中的文件
字符 | 字符串 | 元胞
数据存储中包含的文件,指定为字符向量、字符串或元胞数组。
示例: ["file1.mf4","file2.mf4"]
数据类型: char
| string
| cell
ReadRaw
— 读取原始数据值
false
(默认) | true
读取原始数据值,指定为 true
或 false
。如果指定 true
,数据将读取为原始值。如果指定 false
,数据将读取为物理值。默认值为 false
。
示例: ReadRaw=true
数据类型: logical
ReadSize
— read
返回的数据的大小
"file"
(默认) | 数值 | 持续时间
read
函数返回的数据的大小,指定为 "file"
、数值或持续时间。字符串值 "file"
表示读取整个文件;双精度数值表示要读取的记录数;持续时间值表示要读取记录的时间范围。
如果稍后更改 ReadSize
属性值类型,则数据存储将重置。
示例: 50
数据类型: double
| string
| char
| duration
SelectedChannelGroupNumber
— 要读取的通道组
数值标量
要读取的通道组,指定为数值标量值。
示例: 1
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
SelectedChannelNames
— 要读取的通道的名称
字符串 | 字符 | 元胞
要读取的通道的名称,指定为字符串、字符串数组、字符向量或元胞数组。
MDF 数据存储的每个文件中要读取的那些通道必须具有相同的名称,并且属于同一通道组。除非另有说明,否则默认值为按字母顺序排序的通道组 1 中的通道名称。
示例: "Counter_B4"
数据类型: char
| string
| cell
对象函数
read | 读取 MDF 数据存储中的数据 |
readall | 读取 MDF 数据存储中的所有数据 |
preview | 来自 MDF 数据存储的数据子集 |
reset | 将 MDF 数据存储重置为初始状态 |
hasdata | 确定 MDF 数据存储中是否有数据可以读取 |
partition | 对 MDF 数据存储分区 |
numpartitions | MDF 数据存储的分区数 |
combine (MATLAB) | 合并来自多个数据存储的数据 |
transform
(MATLAB) | 变换数据存储 |
isPartitionable
(MATLAB) | 确定数据存储是否可分区 |
isShuffleable
(MATLAB) | 确定数据存储是否可乱序 |
示例
创建 MDF 数据存储
基于示例文件 CANape.MF4
创建一个 MDF 数据存储,并将其读入一个时间表中。
mdfds = mdfDatastore("C:\myMDFData\CANape.MF4"); while hasdata(mdfds) m = read(mdfds); end
版本历史记录
在 R2017b 中推出R2023b: 转换参量对组已删除
由于新 mdfRead
工作流以 mdfDatastore
功能为基础,不再支持 Conversion
名称-值对组参量。使用此选项的代码会生成错误。您可以改用 ReadRaw
属性和名称-值参量。
对 ReadSize
、Channels
、ChannelGroups
和 SelectedChannelNames
属性也进行了数据类型和格式的相应轻微更新。
R2023a: 支持远程文件 URL
您可以直接访问存储在远程位置的 MDF 文件数据,包括 Amazon S3、Azure® Blob 存储和 HDFS。
另请参阅
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)