主要内容

阅读并分析大型表格文本文件

此示例显示了如何为包含表格数据的大型文本文件创建数据存储,然后一次读取和处理一个块或一个文件。

创建一个数据存储

从示例文件创建数据存储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使用功能尽管环形。循环执行直到hasdata(DS)返回错误的

sums = [];counts = [];尽管hasdata(ds)t = read(ds);sums(end+1)= sum(t.arrdelay);计数(end+1)=长度(t.arrdelay);结尾

计算平均到达延迟。

avgarrivalDelay = sum(sums)/sum(计数)
AvgarrivalDelay = 6.9670

重置数据存储以允许重新读取数据。

重置(DS)

一次阅读一个文件

数据存储可以包含多个文件,每个文件都有不同数量的行。您可以通过设置一个完整的文件从数据存储中读取一个完整的文件读取尺寸财产为'文件'

ds.ReadSize ='文件';

当您更改价值时读取尺寸从数字到'文件'反之亦然,MATLAB®重置数据存储。

DS使用功能尽管像以前一样循环,并计算平均到达延迟。

sums = [];counts = [];尽管hasdata(ds)t = read(ds);sums(end+1)= sum(t.arrdelay);计数(end+1)=长度(t.arrdelay);结尾avgarrivalDelay = sum(sums)/sum(计数)
AvgarrivalDelay = 6.9670

也可以看看

||

相关话题