主要内容

读取文本文件的集合或序列

当您的数据跨多个文本文件存储时,您可以使用tabularTextDatastore管理和导入数据。这个例子展示了如何使用tabularTextDatastore从文本文件集合中全部读取数据,或一次读取一个文件。

数据

对于本例,文件夹C: \ DataTxt包含文本文件的集合。在变量中捕获这个位置位置.数据包含10文本文件,其中每个文件包含10行数据。根据您的文件和数据,结果会有所不同。

位置=“C: \ DataTxt”;dir(位置)
.File01.csv File03.csv File05.csv File07.csv File09.csvFile02.csv File04.csv File06.csv File08.csv File10.csv

创建数据存储

使用文件的位置创建数据存储。

ds = tabularTextDatastore(位置)
ds = TabularTextDatastore的属性:Files: {'C:\DataTxt\File01.csv';“C: \ DataTxt \ File02.csv”;“C: \ DataTxt \ File03.csv”……{} ReadVariableNames: true VariableNames: {'LastName', 'Gender', 'Age'…DatetimeLocale: en_US Text Format Properties: NumHeaderLines: 0 Delimiter: ',' RowDelimiter: '\r\n' TreatAsMissing: " MissingValue: NaN Advanced Text Format Properties: TextscanFormats: {'%q', '%q', '%f'…TextType: 'char' ExponentCharacters: 'eEdD' CommentStyle: " Whitespace: ' \b\t' MultipleDelimitersAsOne: false属性,控制由preview, read, readall: SelectedVariableNames: {'LastName', 'Gender', 'Age'…和7}SelectedFormats: {% q, ' % q ', ' % f '……} ReadSize: 20000行

从数据存储读取数据

使用readall函数从数据存储导入数据。如果集合中的数据适合内存,则可以使用readall函数。

allData = readall (ds);大小(allData)
ans =1×2100年10

或者,使用。每次导入一个文件函数。若要控制导入的数据量,在调用read之前,请调整ReadSize数据存储的属性。设置ReadSize“文件”或者一个正整数。

  • 如果ReadSize“文件”,然后每个调用每次读取一个文件中的所有数据。

  • 如果ReadSize是正整数,那么每次调用读取指定的行数ReadSize,或更少,如果它到达数据的末尾。

ds。ReadSize =“文件”;firstFile =阅读(ds)%读取第一个文件
firstFile =10×10表LastName性别年龄身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus位置  __________ ________ ___ ___________________________ ______ ______ _______ ________ _________ ________________________ ' 史密斯的男性“38”县综合医院“71 - 176”真正的“124 - 93”优秀“约翰逊“男性“43”VA医院假的109 77 69 163“公平的”威廉姆斯的“女性”38圣玛丽的医学中心64 131 '假' 125 83‘好’‘琼斯的“女性”67 VA医院的133 '假' 117 75“公平”“棕色”“女”49个县综合医院64年119 '假' 122 80“好”“戴维斯”“女”46圣玛丽的医学中心68 142 '假' 121 70“好”“米勒”“女”33 VA医院64年142“真正的”130 88 'Good' 'Wilson' 'Male' 40 'VA Hospital' 68 180 'FALSE' 115 82 'Good' 'Moore' 'Male' 28 'St. Mary's Medical Center' 68 183 'FALSE' 115 78 'Excellent' 'Taylor' 'Female' 31 'County General Hospital' 66 132 'FALSE' 118 86 'Excellent'
secondFile =阅读(ds)%读取第二个文件
secondFile =10×10表LastName性别年龄身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus位置  __________ ________ ___ ___________________________ ______ ______ _______ ________ _________ ________________________ ' 安德森的“女性“45”县综合医院68 128的错误“114 77”优秀“托马斯”“女”42“圣玛丽医疗中心”66年137年'FALSE' 115 68 'Poor' 'Jackson' 'Male' 25 'VA Hospital' 71 174 'FALSE' 127 74 'Poor' 'White' 'Male' 39 'VA Hospital' 72 202 'TRUE' 130 95 'Excellent' 'Harris' 'Female' 36 'St. Mary's Medical Center' 65 129 'FALSE' 114 79 'Good' 'Martin' 'Male' 48 'VA Hospital' 71 181 'TRUE' 130 92 'Good' 'Thompson' 'Male' 32 'St. Mary's Medical Center' 69 191 'TRUE' 124 95 'Excellent' 'Garcia' 'Female' 27 'VA Hospital' 69 131 'TRUE' 123 79 'Fair' 'Martinez' 'Male' 37 'County General Hospital' 70 179 'FALSE' 119 77 'Good' 'Robinson' 'Male' 50 'County General Hospital' 68 172 'FALSE' 125 76 'Good'

另请参阅

|||||

相关的话题