hasdata
类:matlab.io.datastore.sdidatastore
包:matlab.io.datastore
确定是否有数据可以读取
语法
Tf = sdi_ds.hasdata
描述
返回逻辑特遣部队
= sdi_ds.hasdata1
如果matlab.io.datastore.sdidatastore
,sdi_ds
,有可读取的数据。当sdi_ds
没有可读取的数据,hasdata
返回0
.
输出参数
特遣部队
-数据可用性指示
逻辑
是否的逻辑指示matlab.io.datastore.sdidatastore
有可读取的数据。当数据可用时,特遣部队
是1
.当数据不可用时,特遣部队
是0
.
例子
处理信号数据使用amatlab.io.datastore.sdidatastore
一个matlab.io.datastore.sdidatastore
在模拟数据检查器存储库中引用信号数据。当信号太大而无法装入内存时,可以使用matlab.io.datastore.sdidatastore
手动增量处理数据或为为您处理增量处理的信号创建一个高时间表。此示例显示如何使用matlab.io.datastore.sdidatastore
.
创建一个matlab.io.datastore.sdidatastore
寻找信号
模拟sldemo_fuelsys
模型,它被配置为记录几个信号,以在Simulation data Inspector存储库中创建数据。
sim卡(“sldemo_fuelsys”)
使用“模拟数据检查器”编程接口获取信号的信号ID。
runCount = 金宝appSimulink.sdi.getRunCount;latestRunID = 金宝appSimulink.sdi.getRunIDByIndex(runCount);latestRun = 金宝appSimulink.sdi.getRun(latestRunID);speedSigID = latestRun.getSignalIDByIndex(4);
使用信号ID创建一个matlab.io.datastore.sdidatastore
为速度
信号。
speedSDIds = matlab.io.datastore.sdidatastore(speedSigID);
验证数据存储的内容
检查的名字
的属性matlab.io.datastore.sdidatastore
验证它是否符合你的期望。
speedSDIds。的名字
Ans = 'map'
你也可以使用预览
方法来检查信号中的前十个样本是否正确。
speedSDIds.preview
ans =10×1的时间表时间数据______________ _______ 0秒0.589 0.00056199秒0.58772 0.0033719秒0.58148 0.01秒0.56765 0.02秒0.54897 0.03秒0.53264 0.04秒0.51837 0.05秒0.50594 0.055328秒0.5 0.055328秒0.5
处理信号数据matlab.io.datastore.sdidatastore
当信号太大而无法装入内存时,可以使用readData
方法从“模拟数据检查器”存储库中读取数据块,以增量地处理数据。使用hasdata
方法作为while循环增量处理整个信号的条件。例如,求最大信号值。
latestMax = [];而speedSDIds。hasdata速度Chunk = speedSDIds.read; speedChunkData = speedChunk.Data; latestMax = max([speedChunkData; latestMax]);结束latestMax
latestMax = 0.8897
在每次读取操作中,读
方法更新下一个读取操作开始时的读取位置。在阅读了部分或全部之后matlab.io.datastore.sdidatastore
,您可以重置读取位置,重新从信号的起点开始。
speedSDIds.reset
在内存中处理信号数据
当信号被你引用时matlab.io.datastore.sdidatastore
适合内存,您可以使用readall
方法将所有信号数据读入内存进行处理,而不是使用读
方法。的readall
方法返回时间表
所有的信号数据。
speedschedule = speedsdds .readall;speedMax = max(speedschedule . data)
speedMax = 0.8897
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。