预览
类:matlab.io.datastore.SimulationDatastore
包:matlab.io.datastore
从数据存储返回数据子集
语法
数据=预览(dst)
描述
从数据存储(数据
=预览(dst
)matlab.io.datastore.SimulationDatastore
对象)dst
不改变当前读位置。预览
只返回数据存储中数据的前十个样本(时间步长)。使用此方法可以快速检查和验证数据是否如您所期望的那样显示。
输入参数
dst
- - - - - -输入数据存储
matlab.io.datastore.SimulationDatastore
对象
输入数据存储,指定为matlab.io.datastore.SimulationDatastore
对象。要创建SimulationDatastore
对象,看到matlab.io.datastore.SimulationDatastore
.
例子
在模拟数据存储中检查和分析数据
这个例子展示了如何从模拟中记录大数据,并通过与交互来检查和分析该数据的部分matlab.io.datastore.SimulationDatastore
对象。
从模型记录大数据
打开示例模型sldemo_fuelsys
.
open_system (“sldemo_fuelsys”)
选择配置参数>数据导入导出>日志数据集数据保存到文件.
set_param (“sldemo_fuelsys”,“LoggingToFile”,“上”)
模拟模型。
sim卡(“sldemo_fuelsys”)
的MAT-fileout.mat
显示在当前文件夹中。该文件包含记录信号的数据,例如燃料
(位于模型的根级别)。
在命令提示符下,创建一个DatasetRef
对象,该对象按名称引用日志记录变量,sldemo_fuelsys_output
.
DSRef = 金宝appSimulink.SimulationData.DatasetRef(“out.mat”,“sldemo_fuelsys_output”);
大数据预览
使用大括号({
而且}
)来提取信号元素燃料
,是第10个元素DSRef
,作为金宝appSimulink.SimulationData.Signal
对象,该对象包含SimulationDatastore
对象。
SimDataSig = DSRef{10};
以便更容易地与SimulationDatastore
对象中的值
的属性信号
对象,将句柄存储在名为DStore
.
DStore = SimDataSig.Values;
使用预览
方法检查记录数据的前五个样本燃料
信号。
预览(DStore)
ans = 10x1时间表时间数据______________ ______ 0秒1.209 0.00056199秒1.209 0.0033719秒1.209 0.01秒1.1729 0.02秒1.1409 0.03秒1.1124 0.04秒1.0873 0.05秒1.0652 0.055328秒1.0652 0.055328秒1.0652
检查特定样品
检查603个已记录的样品燃料
数据。
设置ReadSize
的属性DStore
到一个数字,考虑到内存资源,您的计算机可以容忍。例如,setReadSize
来200
.
DStore。ReadSize = 200;
从数据存储中读取三次。每次读取操作将读取位置提高200个样本。
读(DStore);读(DStore);读(DStore);
现在你已经非常接近第603个样本了ReadSize
到一个更小的数。例如,setReadSize
来5
.
DStore。ReadSize = 5;
再次从数据存储中读取。
阅读(DStore)
ans = 5x1时间表时间数据________ ______ 5.79秒1.6097 5.8秒1.6136 5.81秒1.6003 5.82秒1.5904 5.83秒1.5832
读取数据的第三个示例是数据存储中的第603个示例。
检查前期样品
检查记录的第403个样品燃料
数据。由于之前的读取操作,数据存储现在从第606个示例开始读取,因此必须重置数据存储。然后,可以从第一个样本读到第403个样本。
使用重置
方法进行重置。DStore
.
重置(DStore);
集ReadSize
来200
一次。
DStore。ReadSize = 200;
从数据存储中读取两次,将读取位置推进到第401个样本。
读(DStore);读(DStore);
集ReadSize
来5
一次。
DStore。ReadSize = 5;
从数据存储中读取。
阅读(DStore)
ans = 5x1时间表时间数据________ _______ 3.85秒0.999 3.86秒0.99219 3.87秒0.98538 3.88秒0.97858 3.89秒0.97179
提取多个样本
抽取样本1001 ~ 1020(共20个样本)。
重置数据存储。
重置(DStore)
进入样本1001。
DStore。ReadSize = 200;为i = 1:5 read(DStore);结束
准备从数据存储中提取20个样本。
DStore。ReadSize = 20;
提取样本1001到1020。将提取的数据存储在名为targetSamples
.
targetSamples = read(DStore)
targetSamples = 20x1时间表时间数据________ ______ 9.7 sec 1.5828 9.71 sec 1.5733 9.72 sec 1.5664 9.73 sec 1.5614 9.74 sec 1.5579 9.75 sec 1.5553 9.76 sec 1.5703 9.77 sec 1.582 9.78 sec 1.5913 9.79 sec 1.5988 9.8 sec 1.605 9.81 sec 1.6101 9.82 sec 1.6145 9.83 sec 1.6184 9.84 sec 1.6049 9.85 sec 1.595 9.86 sec 1.5824 9.88 sec 1.5785 9.89 sec 1.5757
在数据存储中找到数据的最大值
重置数据存储。
重置(DStore)
写一个而
循环,使用hasdata
方法,对200个样本的数据块进行增量分析。
DStore。ReadSize = 200;runningMax = [];而hasdata(DStore) tt = read(DStore);rawChunk = tt.Data;runningMax = max([rawChunk;runningMax]);结束
现在,变量runningMax
在整个数据存储中存储最大值。
runningMax
runningMax = 1.6423
另请参阅
主题
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。