readtable

从文件创建表

描述

Ť= readtable(文件名通过从文件中读取的面向列的数据创建一个表。

readtable确定从文件扩展名的文件格式:

  • 。文本文件.DAT, 要么的.csv对于分隔文本文件

  • 的.xls.xlsb.XLSM.XLSX.xltm.xltx, 要么.ods档案电子表格文件

readtable创建一个变量Ť为文件中的每一列,并且读取从该文件的第一行的变量名。默认,readtable创建具有数据类型是适合于在输入文件中的每一列所检测的数据值的变量。

Ť= readtable(文件名OPTS创建使用导入选项表OPTS

Ť= readtable(___名称,值从与由一个或多个名称值对参数中指定附加选项的文件创建一个表。例如,您可以指定是否readtable读取该文件作为变量名或作为数据的第一行。

设置特定导入选项为你的数据,你可以使用OPTS对象,或者您可以指定名称 - 值对。当您在除指定名称 - 值对OPTS, 然后readtable金宝app仅支持这些名称 - 值对:

  • 文本和电子表格参数 -ReadVariableNamesReadRowNames

  • 纯文字参数 -DateLocale编码

  • 电子表格只参数 -UseExcel

例子

全部收缩

加载文件myCsvTable.dat并预览其内容在文本编辑器。屏幕快照如下所示。请注意,该文件包含逗号分隔的面向列的数据。

文件名='myCsvTable.dat';

从逗号分隔文本文件中创建一个表。结果表Ť包含在文件中的每一列一个变量和readtable把在该文件作为变量名的第一行中的条目。

T = readtable(文件名)
T =5×6表名字性别年龄身高体重吸烟者____________ ______ ___ ______ ______ { '史密斯'} { 'M'} 38 71 176 1 { '约翰逊'} { 'M'} 43 69 163 0 { '威廉斯'} { 'F'}38 64 131 0 { '琼斯'} { 'F'} 40 67 133 0 { '布朗'} { 'F'} 49 64 119 0

开始在R2020a中,readtable函数读取输入文件,就好像它会自动调用detectImportOptions该文件的功能。它可以检测数据类型,丢弃多余的标题行,并填写缺失值。

例如,预览文件headersAndMissing.txt在文本编辑器。该文件有列名的线,并用头另一条线。最后两行有差距,其中前面行的数据值。

从文件创建一个表。该readtable函数丢弃头。此外,它填补了适当的缺失值,一个空白为NaN数值变量值,以及文本空字符向量。

T = readtable('headersAndMissing.txt'
T =5×6表名字性别年龄身高体重吸烟者___________ __________ ___ ______ ______ { '吴'} { 'M'} 38 71 176 1 { '约翰逊'} { 'M'} 43 69 163 0 { '桑切斯'} { 'F'}38 64 131 0 { '布朗'} { 'F'}的NaN 67 133 0 { '皮卡德'} {为0x0炭}的NaN 64 119 0

要恢复以前的版本的默认行为,指定“格式”,“自动”名称 - 值对的参数。readtable读取头的数据,并作为一个结果,所有的表变量转换为文本。

T = readtable('headersAndMissing.txt''格式''汽车'
T =6×6表名字性别年龄身高体重吸烟者___________ __________ _______ ___________ { '串'} { '串'} { '诠释'} { '诠释'} { '诠释'} { '布尔'} { '吴'} {'M'} {' 38' } { '71'} { '176'} { '1'} { '约翰逊'} { 'M'} { '43'} { '69'} { '163'} {'0“} {'Sanchez'} {'F' } {'38' } {'64' } {'131'} {'0' } {'Brown' } {'F' } {0x0 char} {'67' } {'133'} {'0' } {'Picard' } {0x0 char} {0x0 char} {'64' } {'119'} {'0' }

欲了解更多信息,请参阅此页面上的兼容性注意事项部分。

预览文件mySpaceDelimTable.txt在文本编辑器。屏幕快照如下所示。请注意,该文件包含空格分隔,面向列的数据。

从空间分隔的文本文件创建一个表。该readtable功能分配默认变量名VAR1VAR5因为该文件不包含它的第一行中检测到列名。

T = readtable('mySpaceDelimTable.txt'
T =3×5表VAR1 VAR2 VAR3 VAR4 VAR5 _____ ____ ______ _________ { 'M'} 45 45 { 'NY'} { '真'} { 'F'} 41 32 { 'CA'} { '假'} { 'M'} 4034 { 'MA'} { '假'}

加载文件myCsvTable.dat并预览其内容在文本编辑器。屏幕快照如下所示。请注意,该文件包含逗号分隔的面向列的数据。

文件名='myCsvTable.dat';

从逗号分隔文本文件中创建一个表。导入前两列作为字符向量,第三列作为UINT32,接下来的两列双精度浮点数。导入的最后一列的特征向量的条目。

T = readtable(文件名,'格式''%s%S%U%F%F%S'
T =5×6表名字性别年龄身高体重吸烟者____________ ______ ___ ______ ______ { '史密斯'} { 'M'} 38 71 176 { '1'} { '约翰逊'} { 'M'} 43 69 163 { '0'} {”威廉姆斯 '} {' F '} 38 64 131 {' 0 '} {' 琼斯} { 'F'} 40 67 133 { '0'} { '布朗'} { 'F'} 49 64 119 {'0“}

转换说明符%S为字符向量的单元阵列,%F对于%u对于UINT32

从文件中读取德国日期,并将它们添加到表英语日期。

预览文件german_dates.txt在文本编辑器。屏幕快照如下所示。请注意,值的第一列包含日期在德国的第二和第三列是数值。

使用阅读示例文件readtable。转换标识符是%d日期和%F对于浮点值。指定使用的编码文件FileEncoding名称 - 值对的参数。指定格式,并使用日期的语言环境DateLocale名称 - 值对的参数。

T = readtable('german_dates.txt'...'格式''%{DD MMMM YYYY} d%F%F'...如果 'fileencoding''ISO-8859-15'...'DateLocale''de_DE' 对应
T =3×3表VAR1 VAR2 VAR3 ________________ ____ _____ 2014年1月1日20.2 100.5 2014年2月1日21.6 102.7 2014年3月1日20.7 99.8

从包含在第一列的第一行和列名的变量名的电子表格创建表。

T = readtable('patients.xls''ReadRowNames',真正);

显示前五个行和表的前四个变量。

T(1:5,1:4)
ANS =5×4表性别年龄身高的位置__________ ___ _____________________________ ______史密斯{ '男'} {38 '县综合医院'} 71强{ '男'} {43 'VA医院'} 69·威廉姆斯{ '女'} {38“圣玛丽的医疗中心 '} 64·琼斯{' 女 '} {40' VA医院”} 67布朗{ '女'} {49 '县综合医院'} 64

查看DimensionNames该表的属性。

T.Properties.DimensionNames
ANS =1x2的细胞{ '名字'} { '变量'}

'姓'在电子表格的第一行的第一列中的名称。

从电子表格中的指定区域创建使用的数据的表patients.xls。从角部之间的5×3矩形区域使用该数据C2E6。不要使用此区域的第一行作为变量名。

T = readtable('patients.xls'...'范围''C2:E6'...'ReadVariableNames',假)
T = VAR1 VAR2 VAR3 ____ ___________________________ ____ 38 '县综合医院' 71 43 'VA医院' 69 38“圣玛丽的医疗中心” 64 40‘VA医院’67 49‘县综合医院’64

Ť包含缺省变量名。

创建导入选项,量身定制的数据类型的多个变量,然后读取数据。

从创建一个文本文件的导入选项的对象。

OPTS = detectImportOptions('airlinesmall.csv'
OPTS = DelimitedTextImportOptions与属性:格式属性:分隔符:{ ' '}空白: '\ B \ T' LineEnding:{' \ n' '\ R' '\ r \ n'} CommentStyle:{} ConsecutiveDelimitersRule:“分裂“LeadingDelimitersRule: 'keep' EmptyLineRule: 'skip' Encoding: 'ISO-8859-1' Replacement Properties: MissingRule: 'fill' ImportErrorRule: 'fill' ExtraColumnsRule: 'addvars' Variable Import Properties: Set types by name using setvartype VariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more} VariableTypes: {'double', 'double', 'double' ... and 26 more} SelectedVariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more} VariableOptions: Show all 29 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts PreserveVariableNames: false Location Properties: DataLines: [2 Inf] VariableNamesLine: 1 RowNamesColumn: 0 VariableUnitsLine: 0 VariableDescriptionsLine: 0 To display a preview of the table, use preview

检查类型变量的性质TaxiInTaxiOut

getvaropts(OPTS,{'TaxiIn''TaxiOut'})
ANS = 1×2 TextVariableImportOptions具有属性阵列:名称类型FillValue TreatAsMissing QuoteRule前缀后缀EmptyFieldRule WhitespaceRule

更改变量的类型TaxiInTaxiOut

OPTS = setvartype(OPTS,{'TaxiIn''TaxiOut'},'双');

指定变量的子集来导入和检查。

opts.SelectedVariableNames = {'TaxiIn''TaxiOut'};

使用readtable与选项一起函数对象导入选定的变量。显示表的汇总。

T = readtable('airlinesmall.csv',选择采用);概要(T)
变量:TaxiIn:123523x1双重价值:最小0中位数5最大1451 NumMissing 37383 TaxiOut:123523x1双重价值:最小0中位数13最大755 NumMissing 37364

用于检测电子表格文件导入选项,指定变量导入,然后读取数据。

创建从文件导入选项的对象。

OPTS = detectImportOptions('patients.xls'
OPTS = SpreadsheetImportOptions与属性:表属性:表:“”替换属性:MissingRule:“填充” ImportErrorRule:“填充”变量导入属性:集类型按名称使用setvartype VariableNames:{“名字”,“性别”,“年龄”...和7个}变量类型:{ '字符', '焦', '双' ......和7个} SelectedVariableNames:{ '姓氏', '性别', '年龄' ......和7个} VariableOptions:Show all 10 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts PreserveVariableNames: false Range Properties: DataRange: 'A2' (Start Cell) VariableNamesRange: 'A1' RowNamesRange: '' VariableUnitsRange: '' VariableDescriptionsRange: '' To display a preview of the table, use preview

修改选项对象指定变量导入。

opts.SelectedVariableNames = {“收缩”“舒张”};

采用readtable沿着选项对象导入指定的变量。

T = readtable('patients.xls',选择采用);概要(T)
变量:收缩期:100X1双值:109最小122平均138最大舒张:100X1双值:最小68平均81.5最大99

您可以同时保留变量名称,其中包括任何字符,包括空格和非ASCII字符读取表格数据。首先,创建任意变量名称的表和表写入一个文本文件。然后,读取表格数据后面同时保留原来的变量名。

创建一个表包含任意变量名和表格数据写入到文件'sampletable.txt'

名字= {“桑切斯”;'约翰逊';“礼”;“迪亚兹”;'棕色'};年龄= [38; 43; 38; 40; 49]。吸烟者=逻辑([1; 0; 1; 0; 1]);varNames = {'姓''年龄''吸烟者(1或0)'};T =表(名字,年龄,吸烟,'VariableNames',varNames)
T =5×3表姓年龄吸烟者(1或0)___________ ___ _______________ { '桑切斯'} 38 {真 '约翰逊'} 43 {假 '李'} 38 {真 '迪亚兹'} 40 {假 '布朗'} 49真
writetable(T,'sampletable.txt'

阅读表格数据回用readtable。默认情况下,MATLAB®将任何变量名称包含空格和非ASCII字符转换为有效的MATLAB®标识符。例如,MATLAB®转换变量名'姓''姓''吸烟者(1或0)''Smoker_1or0_'。要读取表格数据同时保存变量名,设置'PreserveVariableNames'参数真正

T_preserve = readtable('sampletable.txt''PreserveVariableNames',真正)
T_preserve =5×3表姓年龄吸烟者(1或0)___________ ___ _______________ { '桑切斯'} 38 1 { '约翰逊'} 43 {0 '李'} 38 1 { '迪亚兹'} 40 {0 '布朗'} 49 1

您可以从文件中读取十六进制和二进制数,并将它们存储为表中的数值变量。该readtable当其包含的功能会自动读取十六进制和二进制数0X0B分别为前缀。的数值是使用整数数据类型存储。您还可以使用导入选项来读取这些号码时,他们没有前缀。

预览hexAndBinary.txt文件中的文本编辑器。它有十六进制和与前缀二进制数,一列列没有。

使用阅读文件readtable。该功能可以检测与数字0X0B前缀并将它们存储为整数。第三列没有前缀,那么它的值将作为文本处理。

T = readtable('hexAndBinary.txt'
T =3×4表VAR1 VAR2 VAR3 VAR4 _____ ____ ________ ___________ 255 255 { 'C7F9'} { 'Device1的'} 256 {4 '05BF'} { '设备2'} 43981 129 { 'F00F'} { '设备3'}

readtable功能存储在不同的整类的数值(UINT16UINT8),因为T.Var1具有需要存储的多于8位的值。

类(T.Var1)
ANS = 'UINT16'
类(T.Var2)
ANS = 'UINT8'

用于存储从十六进制和二进制数的输入该数字值指定的数据类型,使用'HexType''BinaryType'名称 - 值对的参数。存储值作为符号的32位整数。

T = readtable('hexAndBinary.txt''HexType''INT32''BinaryType''INT32');类(T.Var1)
ANS = 'INT32'
类(T.Var2)
ANS = 'INT32'

您可以使用导入选项来检测十六进制和二进制数没有前缀,并为他们指定的存储。创建一个导入选项对象hexAndBinary.txt

OPTS = detectImportOptions('hexAndBinary.txt'
OPTS = DelimitedTextImportOptions与属性:格式属性:分隔符:{ ' '}空白: '\ B \ T' LineEnding:{' \ n' '\ R' '\ r \ n'} CommentStyle:{} ConsecutiveDelimitersRule:“分裂“LeadingDelimitersRule: 'keep' EmptyLineRule: 'skip' Encoding: 'UTF-8' Replacement Properties: MissingRule: 'fill' ImportErrorRule: 'fill' ExtraColumnsRule: 'addvars' Variable Import Properties: Set types by name using setvartype VariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more} VariableTypes: {'auto', 'auto', 'char' ... and 1 more} SelectedVariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more} VariableOptions: Show all 4 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts PreserveVariableNames: false Location Properties: DataLines: [1 Inf] VariableNamesLine: 0 RowNamesColumn: 0 VariableUnitsLine: 0 VariableDescriptionsLine: 0 To display a preview of the table, use preview

要指定第三列应,进口为十六进制值,尽管缺乏一个前缀,使用setvaropts函数修改的变量类型的表的第三变量。设置变量类型INT32

OPTS = setvaropts(OPTS,3,'NumberSystem'“十六进制”'类型''INT32'
OPTS = DelimitedTextImportOptions与属性:格式属性:分隔符:{ ' '}空白: '\ B \ T' LineEnding:{' \ n' '\ R' '\ r \ n'} CommentStyle:{} ConsecutiveDelimitersRule:“分裂“LeadingDelimitersRule: 'keep' EmptyLineRule: 'skip' Encoding: 'UTF-8' Replacement Properties: MissingRule: 'fill' ImportErrorRule: 'fill' ExtraColumnsRule: 'addvars' Variable Import Properties: Set types by name using setvartype VariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more} VariableTypes: {'auto', 'auto', 'int32' ... and 1 more} SelectedVariableNames: {'Var1', 'Var2', 'Var3' ... and 1 more} VariableOptions: Show all 4 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts PreserveVariableNames: false Location Properties: DataLines: [1 Inf] VariableNamesLine: 0 RowNamesColumn: 0 VariableUnitsLine: 0 VariableDescriptionsLine: 0 To display a preview of the table, use preview

读取文件并导入第三列数值,而不是文字。

T = readtable('hexAndBinary.txt',OPTS)
T =3×4表VAR1 VAR2 VAR3 VAR4 _____ ____ _____ ___________ 255 255 51193 { 'Device1的'} 256 4 1471 { '设备2'} 43981 129 61455 { '设备3'}

输入参数

全部收缩

读取文件,指定为矢量字符或字符串标量的名称。

根据您的文件的位置,文件名可以采取这些形式之一。

位置

形成

在MATLAB当前文件夹或文件夹®路径

指定的文件名文件名

例:'MYFILE.TXT'

文件的文件夹中

如果文件不是在当前文件夹或MATLAB路径上的文件夹中,然后指定的完整或相对路径名文件名

例:'C:\ MyFolder文件\ myFile.xlsx'

例:'DATADIR \ MYFILE.TXT'

偏远的地点

如果该文件被存储在远程位置,然后文件名必须包含指定为形式的统一资源定位符(URL)文件的完整路径:

采用scheme_name://文件路径/my_file.ext

根据您的位置偏远,采用scheme_name可以在此表中的值之一。

偏远的地点 采用scheme_name
亚马逊S3™ S3
Windows Azure的®Blob存储 wasbwasbs
HDFS™ HDFS

欲了解更多信息,请参阅与远程数据,

例:'S3://bucketname/path_to_file/my_file.csv'

  • 如果文件名包括文件扩展名,然后进口函数确定来自扩展名的文件格式。否则,您必须指定'文件类型'名称 - 值对的参数来表示文件的类型。

  • 在Windows®与微软系统®高强®软件,进口函数读取您的Excel版本认可的Excel电子表格文件格式。

  • 如果您的系统没有Excel的Windows或如果您使用MATLAB在线™,进口功能与操作UseExcel属性设置为,只有读.xls的,.XLSX,.XLSM,.xltx和.xltm文件。

  • 对于分隔的文本文件,该文件中的导入功能将空字段要么为NaN(为一个数值变量)或空字符向量(为一个文本变量)。在文本文件中的所有行必须有相同数量的分隔符。进口函数忽略该文件中无关紧要的空格。

数据类型:烧焦|

文件导入选项,指定为SpreadsheetImportOptionsDelimitedTextImportOptions, 要么FixedWidthImportOptions目的是通过创建detectImportOptions功能。该OPTS对象包含控制数据导入过程的性质。有关每个对象的属性的详细信息,请参阅相应对象的页面。

文件类型 产量
电子表格文件 SpreadsheetImportOptions宾语
文本文件 DelimitedTextImportOptions宾语
固定宽度的文本文件 FixedWidthImportOptions宾语

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N

例:'ReadVariableNames',假表示该文件的第一行不对应的变量名。

当阅读:

  • 文本文件,只有这些参数名称申请:文件类型ReadVariableNamesReadRowNamesTreatAsEmptyDatetimeType分隔符HeaderLines格式EmptyValueMultipleDelimsAsOneCollectOutputCommentStyleExpChars行结束DateLocale编码HexTypeBinaryType

  • 电子表格文件,只有这些参数名称申请:文件类型ReadVariableNamesReadRowNamesTreatAsEmptyDatetimeType范围UseExcelTextType

  • 与文本或电子表格文件OPTS导入选项,只有这些参数名称申请:ReadVariableNamesReadRowNamesDateLocale编码UseExcel

文本和电子表格文件

全部收缩

类型的文件,指定为逗号分隔的一对组成的'文件类型''文本'要么“电子表格”

指定'文件类型'名称 - 值对的参数,当文件名不包括文件扩展名,或者如果扩展名是比下面的一个其它:

  • 。文本文件.DAT, 要么的.csv对于分隔文本文件

  • 的.xls.xlsb.XLSM.XLSX.xltm.xltx, 要么.ods档案电子表格文件

例:“文件类型”,“文本”

数据类型:烧焦|

指示器,用于读取所述第一行作为变量名,指定为逗号分隔的一对组成的'ReadVariableNames',要么真正1, 要么0。如果没有指定,readtable自动检测的变量名的存在。

指示符

描述

真正

当使用区域来读取第一行包含表的变量名。readtable创建一个变量,与检测到的变量的名称,在每个列Ť

使用时,该地区的读第一行包含表中的数据。readtable创建窗体的默认变量名'VAR1',......, 'VARN',其中ñ是变量的数目。

不明 如果未指定,readtable自动检测真正要么并相应地继续进行。

注意:如果这两个'ReadVariableNames''ReadRowNames'逻辑指标真正, 然后readtable在该地区的第一行的第一列保存名称中的财产作为第一个维度的名字读,T.Properties.DimensionNames

如果您指定ReadVariableNames参数除了OPTS导入选项,那么readtable行为改变基于规范:

  • 如果ReadVariableNames真正,然后通过读取指定的文件中的变量名VariableNamesRange或者VariableNamesLine导入选项对象的属性。

  • 如果ReadVariableNames,然后读取从变量名VariableNames导入选项对象的属性。

指示器,用于读取第一列作为行的名称,指定为逗号分隔的一对组成的'ReadRowNames',要么真正0, 要么1

指示符

描述

使用时读取区域的第一列包含数据,而不是为表中的行名。

真正

当使用该区域的读取第一列包含表中的行名。

不明 如果未指定,readtable假设

注意:如果这两个'ReadVariableNames''ReadRowNames'逻辑指标真正, 然后readtable在该地区的第一行的第一列保存名称中的财产作为第一个维度的名字读,T.Properties.DimensionNames

如果您指定ReadRowNames参数除了OPTS导入选项,那么readtable行为改变基于规范:

  • 如果ReadRowNames真正,然后通过使用读取指定文件的行名RowNamesRange或者RowNameColumn导入选项对象的属性。

  • 如果ReadRowNames,那么不导入行的名称。

占位符文本以治疗为空值,指定为逗号分隔的一对组成的'TreatAsEmpty'和字符向量,特征向量,字符串或字符串数​​组的单元阵列。对应于这些字符的表元素被设置为为NaN

'TreatAsEmpty'仅适用于数字列在文件中,并readtable不接受数字文本,如'-99'

例:'TreatAsEmpty', 'N / A'要么'TreatAsEmpty', “N / A”N / A数字列内为NaN

例:'TreatAsEmpty',{ ' '' NA', 'N / A'}要么'TreatAsEmpty',[ “ ”“ NA”, “N / A”]NAN / A数字列内为NaN

数据类型:烧焦|

键入导入的文本数据,指定为逗号分隔的一对组成的'TextType',要么“字符”要么'串'

  • “字符”- 导入文本数据到MATLAB的特征向量。

  • '串'- 导入文本数据到MATLAB的字符串数组。

例:'TextType', '炭'

键入进口日期和时间数据,指定为逗号分隔的一对组成的'DatetimeType'这些值之一:'约会时间''文本', 要么'exceldatenum'。价值'exceldatenum'仅适用于电子表格文件,而不是有效的文本文件。

键入导入的日期和时间数据
'约会时间'

MATLAB约会时间数据类型

欲了解更多信息,请参阅约会时间

'文本'

如果'DatetimeType'被指定为'文本',然后进口日期和时间数据的类型取决于在所指定的值'TextType'参数:

  • 如果'TextType'设定为“字符”,然后进口函数返回日期作为字符向量的单元阵列。

  • 如果'TextType'设定为'串',然后进口函数返回日期作为字符串的数组。

'exceldatenum'

Excel中的序列日期数字

串行日期数是单一的数等于天数从一个给定的基准日期。Excel中的序列日期数字使用比MATLAB序列日期编号不同的参考日期。有关Excel的日期的详细信息,请参阅https://金宝appsupport.microsoft.com/en-us/kb/214330

数据类型:烧焦|

标志保持变量名,指定为逗号分隔的一对组成的PreserveVariableNames,要么真正, 要么

  • 真正- 保留变量名是无效MATLAB标识,如包括空格和非ASCII字符变量名。

  • - 转换无效的变量名称(如由确定isvarname功能),有效MATLAB标识符。

在R2019b开始,变量名和列名可以包含任何字符,包括空格和非ASCII字符。此外,他们可以与任何字符,而不仅仅是字母开头。变量和列名不必是有效的MATLAB标识符(如由确定isvarname功能)。为了保存这些变量名和行名,集PreserveVariableNames真正

只有文本文件

全部收缩

字段分隔符,指定为逗号分隔的一对组成的“分隔符”和字符向量,特征向量的单元阵列,或一个字符串。指定分隔符使用任何有效的字符如逗号''或周期''

下表列出了一些常用的字段分隔符。

字段分隔符

''

'逗号'

逗号

“”

'空间'

空间

'\ t'

'标签'

标签

';'

'半'

分号

'|'

'酒吧'

竖线

不明

如果没有指定,readtable自动检测的分隔符。

要连续分隔符视为一个分隔符,指定分隔符作为字符向量的单元阵列。此外,您还必须指定MultipleDelimsAsOne选项。

例:'分隔符', ''要么“分隔符”,“逗号”

数据类型:烧焦||细胞

线跳过在该文件的开始,指定为逗号分隔的一对组成的'HeaderLines'和一个正整数。如果没有指定,readtable自动检测线跳过数。

数据类型:|

该文件的列格式,指定为逗号分隔的一对组成的'格式'和具有一个或多个转换说明,或字符向量或标量串'汽车'。转换标识符是作为说明符接受由相同的textscan功能。

指定格式可以显著提高速度,一些大的文件。如果没有指定的值格式, 然后readtable使用%q解读非数字列。该%q符读取文本,省略了双引号() 如果合适的话。

  • 如果不指定'格式'名称 - 值对,则readtable好像你已经使用的结果函数的行为detectImportOptions功能导入数据。有关此行为的后果的详细信息,请参阅兼容性注意事项

  • 如果您指定“格式”,“自动”,然后创建了变量阵列,字符向量的单元阵列,或约会时间阵列,这取决于数据。如果整列是数字,变量输入为。如果在一列中的任何元素不是数字,变量被导入为特征向量的单元阵列,或作为约会时间如果值阵列表示日期和时间。

数据类型:烧焦|

在分隔文本文件空数字字段返回的值,指定为逗号分隔的一对组成的'EmptyValue'和一个标量。

多个定界符处理,指定为逗号分隔的一对组成的'MultipleDelimsAsOne',要么真正要么。如果真正,然后进口函数将连续的分隔符作为一个单一的分隔符。由空格分开的重复分隔符也被视为单个分隔符。你还必须指定分隔符选项。

例:'MultipleDelimsAsOne',1

逻辑指示符确定数据级联,指定为逗号分隔的一对组成的'CollectOutput',要么真正要么。如果真正,然后进口函数连接相同的基本MATLAB类的连续的输出细胞成一个单一的阵列。

符号指定文本忽略,指定为逗号分隔的一对组成的'CommentStyle'和字符向量,特征向量,字符串或字符串数​​组的单元阵列。

例如,指定的字符,例如'%'忽略文本在同一行的符号以下。指定两个字符载体,如的单元阵列{ '/ *', '* /'},忽视这些序列之间的任何文本。

MATLAB检查不是场内仅在每个字段的开始评论。

例:'CommentStyle',{ '/ *', '* /'}

数据类型:烧焦|

指数字符,指定为逗号分隔的一对组成的'ExpChars'和字符向量或字符串。默认的指数字符ËËdd

数据类型:烧焦|

端的行字符,指定为逗号分隔的一对组成的'行结束'和字符向量或字符串。字符载体必须是'\ r \ N'或者它必须指定单个字符。端的行共同字符是一个新行字符('\ n')或回车('\ r')。如果您指定'\ r \ N',那么导入功能对待任何的\ r\ n以及两者的组合(\ r \ n)作为结束行字符。

端的行的默认序列是\ n\ r, 要么\ r \ n,这取决于你的文件的内容。

如果存在缺少值,并在文件的最后一行的末尾的结束线序,然后进口函数返回这些字段为空值。这确保了单个细胞在输出单元阵列,C,大小相同。

例:'行结束',':'

数据类型:烧焦|

区域设置用于读取日期,指定为逗号分隔的一对组成的'DateLocale'和字符向量或形式的字符串标量XX_YY其中:

  • YY是大写ISO 3166-1的α-2代码表示的国家。

  • XX是指示语言小写的ISO 639-1双字母代码。

对于语言环境共同值的列表,请参阅语言环境的名称 - 值对参数约会时间功能。

当使用%d格式说明读取文本约会时间值,使用DateLocale指定其中进口函数应该解释月份和星期几,名称和缩写的语言环境。

如果您指定DateLocale参数除了OPTS导入选项,那么进口功能利用指定的值DateLocale参数,它将覆盖导入选项定义的语言环境。

例:'DateLocale', 'Ja_JP表示'

字符编码方案与文件相关联,指定为逗号分隔的一对组成的“编码”'系统'或标准字符编码方案名称。如果不指定任何编码时,readtable函数使用自动字符集检测来确定所述编码读取文件时。

如果您指定“编码”参数除了导入选项,那么readtable函数使用对指定的值“编码”,覆盖在导入选项中定义的编码。

例:'编码', 'UTF-8'使用UTF-8编码。

例:“编码”,“系统”使用系统默认编码。

数据类型:烧焦|

从文本文件的持续时间数据的输出的数据类型,指定为逗号分隔的一对组成的'DurationType',要么“持续时间”要么'文本'

键入进口持续时间数据
“持续时间”

MATLAB持续时间数据类型

欲了解更多信息,请参阅持续时间

'文本'

如果'DurationType'被指定为'文本',然后进口持续时间数据的类型取决于在所指定的值'TextType'参数:

  • 如果'TextType'“字符”,然后进口函数返回的持续时间的数据作为字符向量的单元阵列。

  • 如果'TextType''串',然后进口函数返回的持续时间数据作为一个字符串数组。

数据类型:烧焦|

十六进制数据的输出的数据类型,指定为逗号分隔的一对组成的'HexType'和值中的一个在表中列出。

输入文件表示十六进制值的文本,即使用0X要么0X作为前缀和人物0-9一个-F一个-F作为数字。(大写和小写字母表示相同的数字,例如,'0xf''0xF'都代表15。)

进口功能十六进制值转换为通过的值指定的数据类型'HexType'

的价值'HexType'

输出表变量数据类型

'汽车'

数据类型自动检测

'文本'

不变输入文本

'INT8'

8位整数,签署

'INT16'

16位整数,签署

'INT32'

32位整数,签署

'的Int64'

64位整数,签署

'UINT8'

8位整数,无符号

'UINT16'

16位整数,无符号

'UINT32'

32位整数,无符号

'UINT64'

64位整数,无符号

例:'HexType', 'UINT16'将表示十六进制值的文本(例如'0xFF的'),以16位无符号整数(如255)在输出表中。

数据类型:烧焦|

二进制数据的输出的数据类型,指定为逗号分隔的一对组成的'BinaryType'和值中的一个在表中列出。

输入文件表示的二进制值作为文本,即使用0B要么0B作为前缀和人物01作为数字。

进口函数的二进制值转换成由的值指定的数据类型'BinaryType'

的价值'BinaryType'

输出表变量数据类型

'汽车'

数据类型自动检测

'文本'

不变输入文本

'INT8'

8位整数,签署

'INT16'

16位整数,签署

'INT32'

32位整数,签署

'的Int64'

64位整数,签署

'UINT8'

8位整数,无符号

'UINT16'

16位整数,无符号

'UINT32'

32位整数,无符号

'UINT64'

64位整数,无符号

例:'BinaryType', 'UINT16'将表示的二进制值的文本(例如'0b11111111'),以16位无符号整数(如255)在输出表中。

数据类型:烧焦|

只有电子表格文件

全部收缩

工作表读取,指定为逗号分隔的一对组成的'片'和一个正整数,指示工作表索引或字符载体或含有该工作表名的字符串。工作表名称不能包含冒号()。要确定一个电子表格文件,使用表的名称片材= sheetnames(文件名)。欲了解更多信息,请参阅sheetnames

如果您指定参数除了OPTS导入选项,那么readtable函数使用对指定的值参数,覆盖在导入选项中定义的表名称。

例:'片'2

例:'片''MySheetName'

例:'片'“MySheetName”

数据类型:烧焦||||INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64

工作表以读,指示为由逗号指定的矩形区域的部分分开一对组成的'范围'和以下列形式中的一种的字符向量或标量的字符串。

方法来指定范围 描述

'细胞'要么[行山口]

起始单元格

指定数据作为字符向量或标量字符串或两个元素的数值向量起始细胞。

  • 含有使用Excel一列字母和行号字符向量或标量串A1符号。例如,A5是在列的交叉点的标识符的单元一个和行

  • 形式的两个元件数值向量[行山口]指示起始行和列。

使用起始细胞,进口功能自动开始导入在开始细胞,并在最后一个空行或注脚范围结束检测数据的范围。

例:'A5'要么[5 1]

Corner1:Corner2

范围矩形

使用语法指定范围Corner1:Corner2,其中Corner1Corner2是定义区域两个相对的拐角。例如,'D2:H4'表示两个角部之间的3×5的矩形区域D2H4在工作表中。该'范围'名称 - 值对的说法是不区分大小写,并使用Excel的A1引用样式(请参阅Excel的帮助)。

例:'范围', 'Corner1:Corner2'

“”

未指定或空

如果没有指定,readtable自动检测所使用的范围。

例:'范围',''

注意:使用范围指的是实际上包含数据电子表格的矩形部分。readtable自动检测通过修整不包含任何数据的前缘和后的行和列所使用的范围。文本即只有白色空间被认为是数据,并且所使用的范围内被捕获。

ROW1:行2

行范围

您可以通过指定的开始和结束使用Excel列代号行识别范围。然后readtable自动检测指定行内所使用的列范围。例如,readtable解释该范围指定'1:7'通过7(含)读取所有列以行1所使用的范围的指令。

例:'范围', '1:7'

列1:列2

列范围

您可以通过指定的开始和结束使用Excel列代号列识别范围。然后readtable自动检测指定的列内所使用的行范围。例如,readtable解释该范围指定'A:F'作为指令通过F(含)至读取在所使用的范围的所有行中列A。

例:'范围', 'A:F'

NamedRange

Excel的命名范围

在Excel中,您可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格中的矩形区域,并调用它'myTable的'。如果在电子表格中存在这样的命名范围,然后readtable可以使用其名称读取范围。

例:'范围', 'myTable的'

例:'范围''A1:F10'

例:'范围'“A1:F10”-

数据类型:烧焦|

标志开始的一个实例Microsoft Excel中用于Windows读取的电子表格数据时,指定为逗号分隔的一对组成的'UseExcel',要么真正, 要么

您可以设置'UseExcel'参数将这些值中的一个:

  • 真正- 在导入函数读取文件时启动的Microsoft Excel的一个实例。

  • - 读取文件时,导入功能不会启动Microsoft Excel的一个实例。在这种模式中,支持的文件格式和互动功能,如公式和宏导入功能不同的功能操作。金宝app

UseExcel

真正

金宝app支持的文件格式

.xls的,.XLSX,.XLSM,.xltx,.xltm,.xlsb,.ods档案

.xls的,.XLSX,.XLSM,.xltx,.xltm

金宝app交互功能,如公式和宏支持

没有

从电子表格文件中读取Windows平台上的时候,如果要启动的实例Microsoft Excel中,然后设置'UseExcel'参数真正

输出参数

全部收缩

输出表,返回表。该表可存储元数据,例如描述,可变单元,变量名,和行的名称。欲了解更多信息,请参阅的属性部分

提示

  • 在XLSX格式的大文件有时加载缓慢。为了更好的导入和导出性能,Microsoft建议您使用XLSB格式。

兼容性注意事项

展开全部

行为R2020a改变

介绍了在R2013b