主要内容

读取和分析大型表格文本文件

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

创建一个数据存储

从示例文件创建数据存储airlinesmall.csv使用tabularTextDatastore函数。在创建数据存储时,可以指定文本,NA,则视为缺失数据。

ds = tabularTextDatastore (“airlinesmall.csv”“TreatAsMissing”“NA”);

通过修改数据存储的属性,可以修改数据存储的属性。修改MissingValue属性指定缺失值视为0。

ds。MissingValue = 0;

在本例中,为到达延迟选择变量,ArrDelay,作为利息的变量。

ds。SelectedVariableNames =“ArrDelay”

的预览数据预览函数。该功能不影响数据存储的状态。

data =预览(ds)
data =8×1表ArrDelay ________ 8 8 21 13 4 59 3 11

读取数据子集

默认情况下,读取的TabularTextDatastore一次两万行。在每个调用中读取不同数量的行,修改ReadSize的属性ds

ds。ReadSize = 15000;

从其中读取数据子集ds使用函数在一个循环。循环执行到hasdata (ds)返回

金额= [];数量= [];hasdata(ds) T = read(ds);金额(终端+ 1)=总和(T.ArrDelay);结束计数(+ 1)=长度(T.ArrDelay);结束

计算平均到达延迟

avgArrivalDelay =笔(金额)/笔(计数)
avgArrivalDelay = 6.9670

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

重置(ds)

一次读取一个文件

一个数据存储可以包含多个文件,每个文件具有不同数量的行。属性,可以从数据存储中一次读取一个完整的文件ReadSize财产“文件”

ds。ReadSize =“文件”

当你改变的值ReadSize从一个数字到“文件”反之亦然,MATLAB重置数据存储。

读取ds使用函数在一个循环,并计算平均到达延迟。

金额= [];数量= [];hasdata(ds) T = read(ds);金额(终端+ 1)=总和(T.ArrDelay);结束计数(+ 1)=长度(T.ArrDelay);结束avgArrivalDelay =笔(金额)/笔(计数)
avgArrivalDelay = 6.9670

另请参阅

||

相关的话题