此示例显示如何为包含表格数据的大文本文件创建数据存储,然后一次读取和处理数据一个块或一次一个文件。
从示例文件创建数据存储Airlinesmall.csv.
使用tabulartextdatastore.
功能。创建数据存储时,可以指定文本,NA.
,在数据中被视为缺失数据。
ds = tabulartextdataStore('airlinesmall.csv'那'尾声'那'na');
您可以通过更改其属性来修改数据存储的属性。修改遗漏夸张
要指定缺失值的属性被视为0。
ds.missingvalue = 0;
在此示例中,选择到达延迟的变量,arrdelay.
,作为感兴趣的变量。
ds.selectedvariablenames ='arrdelay';
使用该数据预览数据预习
功能。此函数不会影响数据存储的状态。
数据=预览(DS)
数据=8×1表Arrdelay ________ 8 8 21 13 4 59 3 11
默认,读
从A中读tabulartextdatastore.
一次20000行。在每个呼叫中读取不同的行数读
,修改阅读
财产DS.
。
ds.readsize = 15000;
读取数据的子集DS.
使用读
功能在A.尽管
环形。循环执行直到hasdata(DS)
回报错误的
。
ums = [];counts = [];尽管Hasdata(DS)T =读取(DS);总和(结束+ 1)= SUM(T.Arrdelay);计数(结束+ 1)=长度(t.Arrdelay);结尾
计算平均到达延迟
avgarrivaldelay = sum(sums)/ sum(counts)
avgarrivaldelay = 6.9670.
重置数据存储区以允许重新设置数据。
重置(DS)
数据存储可能包含多个文件,每个文件都有不同的行数。您可以一次从数据存储区读取一个完整文件阅读
财产'文件'
。
ds.readsize =.'文件';
当您更改值时阅读
从一个数字到'文件'
或反之亦然,Matlab重置了数据存储。
读DS.
使用读
功能在A.尽管
循环,如前所述,并计算平均到达延迟。
ums = [];counts = [];尽管Hasdata(DS)T =读取(DS);总和(结束+ 1)= SUM(T.Arrdelay);计数(结束+ 1)=长度(t.Arrdelay);结尾avgarrivaldelay = sum(sums)/ sum(counts)
avgarrivaldelay = 6.9670.
Mapreduce.
|tabulartextdatastore.
|高