文档帮助中心
detectImportOptions
从文件创建表
T = readtable(文件名)
T = readtable(文件名,OPTS)
T = readtable(___,名称,值)
例
Ť= readtable(文件名)通过从文件中读取的面向列的数据创建一个表。
Ť= readtable(文件名)
Ť
文件名
readtable确定从文件扩展名的文件格式:
readtable
。文本文件,.DAT, 要么的.csv对于分隔文本文件
。文本文件
.DAT
的.csv
的.xls,.xlsb,.XLSM,.XLSX,.xltm,.xltx, 要么.ods档案电子表格文件
的.xls
.xlsb
.XLSM
.XLSX
.xltm
.xltx
.ods档案
readtable创建一个变量Ť为文件中的每一列,并且读取从该文件的第一行的变量名。默认,readtable创建具有数据类型是适合于在输入文件中的每一列所检测的数据值的变量。
Ť= readtable(文件名,OPTS)创建使用导入选项表OPTS。
Ť= readtable(文件名,OPTS)
OPTS
Ť= readtable(___,名称,值)从与由一个或多个名称值对参数中指定附加选项的文件创建一个表。例如,您可以指定是否readtable读取该文件作为变量名或作为数据的第一行。
Ť= readtable(___,名称,值)
名称,值
设置特定导入选项为你的数据,你可以使用OPTS对象,或者您可以指定名称 - 值对。当您在除指定名称 - 值对OPTS, 然后readtable金宝app仅支持这些名称 - 值对:
文本和电子表格参数 -ReadVariableNames,ReadRowNames
ReadVariableNames
ReadRowNames
纯文字参数 -DateLocale,编码
DateLocale
编码
电子表格只参数 -片,UseExcel
片
UseExcel
全部收缩
加载文件myCsvTable.dat并预览其内容在文本编辑器。屏幕快照如下所示。请注意,该文件包含逗号分隔的面向列的数据。
myCsvTable.dat
文件名='myCsvTable.dat';
从逗号分隔文本文件中创建一个表。结果表Ť包含在文件中的每一列一个变量和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在文本编辑器。该文件有列名的线,并用头另一条线。最后两行有差距,其中前面行的数据值。
headersAndMissing.txt
从文件创建一个表。该readtable函数丢弃头。此外,它填补了适当的缺失值,一个空白为NaN数值变量值,以及文本空字符向量。
为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在文本编辑器。屏幕快照如下所示。请注意,该文件包含空格分隔,面向列的数据。
mySpaceDelimTable.txt
从空间分隔的文本文件创建一个表。该readtable功能分配默认变量名VAR1至VAR5因为该文件不包含它的第一行中检测到列名。
VAR1
VAR5
T = readtable('mySpaceDelimTable.txt')
T =3×5表VAR1 VAR2 VAR3 VAR4 VAR5 _____ ____ ______ _________ { 'M'} 45 45 { 'NY'} { '真'} { 'F'} 41 32 { 'CA'} { '假'} { 'M'} 4034 { 'MA'} { '假'}
从逗号分隔文本文件中创建一个表。导入前两列作为字符向量,第三列作为UINT32,接下来的两列双精度浮点数。导入的最后一列的特征向量的条目。
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。
%S
%F
双
%u
从文件中读取德国日期,并将它们添加到表英语日期。
预览文件german_dates.txt在文本编辑器。屏幕快照如下所示。请注意,值的第一列包含日期在德国的第二和第三列是数值。
german_dates.txt
使用阅读示例文件readtable。转换标识符是%d日期和%F对于浮点值。指定使用的编码文件FileEncoding名称 - 值对的参数。指定格式,并使用日期的语言环境DateLocale名称 - 值对的参数。
%d
FileEncoding
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该表的属性。
DimensionNames
T.Properties.DimensionNames
ANS =1x2的细胞{ '名字'} { '变量'}
'姓'在电子表格的第一行的第一列中的名称。
'姓'
从电子表格中的指定区域创建使用的数据的表patients.xls。从角部之间的5×3矩形区域使用该数据C2和E6。不要使用此区域的第一行作为变量名。
patients.xls
C2
E6
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
检查类型变量的性质TaxiIn和TaxiOut。
类型
TaxiIn
TaxiOut
getvaropts(OPTS,{'TaxiIn','TaxiOut'})
ANS = 1×2 TextVariableImportOptions具有属性阵列:名称类型FillValue TreatAsMissing QuoteRule前缀后缀EmptyFieldRule WhitespaceRule
更改变量的类型TaxiIn和TaxiOut至双。
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'。
'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'参数真正。
'吸烟者(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当其包含的功能会自动读取十六进制和二进制数0X和0B分别为前缀。的数值是使用整数数据类型存储。您还可以使用导入选项来读取这些号码时,他们没有前缀。
0X
0B
预览hexAndBinary.txt文件中的文本编辑器。它有十六进制和与前缀二进制数,一列列没有。
hexAndBinary.txt
使用阅读文件readtable。该功能可以检测与数字0X和0B前缀并将它们存储为整数。第三列没有前缀,那么它的值将作为文本处理。
T = readtable('hexAndBinary.txt')
T =3×4表VAR1 VAR2 VAR3 VAR4 _____ ____ ________ ___________ 255 255 { 'C7F9'} { 'Device1的'} 256 {4 '05BF'} { '设备2'} 43981 129 { 'F00F'} { '设备3'}
该readtable功能存储在不同的整类的数值(UINT16和UINT8),因为T.Var1具有需要存储的多于8位的值。
UINT16
UINT8
T.Var1
类(T.Var1)
ANS = 'UINT16'
类(T.Var2)
ANS = 'UINT8'
用于存储从十六进制和二进制数的输入该数字值指定的数据类型,使用'HexType'和'BinaryType'名称 - 值对的参数。存储值作为符号的32位整数。
'HexType'
'BinaryType'
T = readtable('hexAndBinary.txt','HexType','INT32','BinaryType','INT32');类(T.Var1)
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。
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'}
读取文件,指定为矢量字符或字符串标量的名称。
根据您的文件的位置,文件名可以采取这些形式之一。
位置
形成
指定的文件名文件名。
例:'MYFILE.TXT'
'MYFILE.TXT'
文件的文件夹中
如果文件不是在当前文件夹或MATLAB路径上的文件夹中,然后指定的完整或相对路径名文件名。
例:'C:\ MyFolder文件\ myFile.xlsx'
'C:\ MyFolder文件\ myFile.xlsx'
例:'DATADIR \ MYFILE.TXT'
'DATADIR \ MYFILE.TXT'
偏远的地点
如果该文件被存储在远程位置,然后文件名必须包含指定为形式的统一资源定位符(URL)文件的完整路径:
采用scheme_name://文件路径/my_file.ext
采用scheme_name
文件路径
my_file.ext
根据您的位置偏远,采用scheme_name可以在此表中的值之一。
S3
wasb
wasbs
HDFS
欲了解更多信息,请参阅与远程数据,。
例:'S3://bucketname/path_to_file/my_file.csv'
'S3://bucketname/path_to_file/my_file.csv'
如果文件名包括文件扩展名,然后进口函数确定来自扩展名的文件格式。否则,您必须指定'文件类型'名称 - 值对的参数来表示文件的类型。
'文件类型'
在Windows®与微软系统®高强®软件,进口函数读取您的Excel版本认可的Excel电子表格文件格式。
如果您的系统没有Excel的Windows或如果您使用MATLAB在线™,进口功能与操作UseExcel属性设置为假,只有读.xls的,.XLSX,.XLSM,.xltx和.xltm文件。
假
.xls的,.XLSX,.XLSM,.xltx和.xltm
对于分隔的文本文件,该文件中的导入功能将空字段要么为NaN(为一个数值变量)或空字符向量(为一个文本变量)。在文本文件中的所有行必须有相同数量的分隔符。进口函数忽略该文件中无关紧要的空格。
数据类型:烧焦|串
烧焦
串
SpreadsheetImportOptions
DelimitedtextImportOptions
FixedWidthImportOptions
文件导入选项,指定为SpreadsheetImportOptions,DelimitedTextImportOptions, 要么FixedWidthImportOptions目的是通过创建detectImportOptions功能。该OPTS对象包含控制数据导入过程的性质。有关每个对象的属性的详细信息,请参阅相应对象的页面。
DelimitedTextImportOptions
指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和值是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N。
名称
值
名1,值1,...,NameN,值N
'ReadVariableNames',假
当阅读:
文本文件,只有这些参数名称申请:文件类型,ReadVariableNames,ReadRowNames,TreatAsEmpty,DatetimeType,分隔符,HeaderLines,格式,EmptyValue,MultipleDelimsAsOne,CollectOutput,CommentStyle,ExpChars,行结束,DateLocale,编码,HexType和BinaryType。
文件类型
TreatAsEmpty
DatetimeType
分隔符
HeaderLines
格式
EmptyValue
MultipleDelimsAsOne
CollectOutput
CommentStyle
ExpChars
行结束
HexType
BinaryType
电子表格文件,只有这些参数名称申请:文件类型,ReadVariableNames,ReadRowNames,TreatAsEmpty,DatetimeType,片,范围,UseExcel和TextType。
范围
TextType
与文本或电子表格文件OPTS导入选项,只有这些参数名称申请:ReadVariableNames,ReadRowNames,DateLocale,编码,片和UseExcel。
'文本'
“电子表格”
类型的文件,指定为逗号分隔的一对组成的'文件类型'和'文本'要么“电子表格”。
指定'文件类型'名称 - 值对的参数,当文件名不包括文件扩展名,或者如果扩展名是比下面的一个其它:
例:“文件类型”,“文本”
“文件类型”,“文本”
'ReadVariableNames'
1
0
指示器,用于读取所述第一行作为变量名,指定为逗号分隔的一对组成的'ReadVariableNames',要么真正,假,1, 要么0。如果没有指定,readtable自动检测的变量名的存在。
指示符
描述
当使用区域来读取第一行包含表的变量名。readtable创建一个变量,与检测到的变量的名称,在每个列Ť。
使用时,该地区的读第一行包含表中的数据。readtable创建窗体的默认变量名'VAR1',......, 'VARN',其中ñ是变量的数目。
'VAR1',......, 'VARN'
ñ
注意:如果这两个'ReadVariableNames'和'ReadRowNames'逻辑指标真正, 然后readtable在该地区的第一行的第一列保存名称中的财产作为第一个维度的名字读,T.Properties.DimensionNames。
'ReadRowNames'
如果您指定ReadVariableNames参数除了OPTS导入选项,那么readtable行为改变基于规范:
如果ReadVariableNames是真正,然后通过读取指定的文件中的变量名VariableNamesRange或者VariableNamesLine导入选项对象的属性。
VariableNamesRange
VariableNamesLine
如果ReadVariableNames是假,然后读取从变量名VariableNames导入选项对象的属性。
VariableNames
指示器,用于读取第一列作为行的名称,指定为逗号分隔的一对组成的'ReadRowNames',要么假,真正,0, 要么1。
使用时读取区域的第一列包含数据,而不是为表中的行名。
当使用该区域的读取第一列包含表中的行名。
如果您指定ReadRowNames参数除了OPTS导入选项,那么readtable行为改变基于规范:
如果ReadRowNames是真正,然后通过使用读取指定文件的行名RowNamesRange或者RowNameColumn导入选项对象的属性。
RowNamesRange
RowNameColumn
如果ReadRowNames是假,那么不导入行的名称。
'TreatAsEmpty'
占位符文本以治疗为空值,指定为逗号分隔的一对组成的'TreatAsEmpty'和字符向量,特征向量,字符串或字符串数组的单元阵列。对应于这些字符的表元素被设置为为NaN。
'TreatAsEmpty'仅适用于数字列在文件中,并readtable不接受数字文本,如'-99'。
'-99'
例:'TreatAsEmpty', 'N / A'要么'TreatAsEmpty', “N / A”套N / A数字列内为NaN。
'TreatAsEmpty', 'N / A'
'TreatAsEmpty', “N / A”
N / A
例:'TreatAsEmpty',{ ' '' NA', 'N / A'}要么'TreatAsEmpty',[ “ ”“ NA”, “N / A”]套。,NA和N / A数字列内为NaN。
'TreatAsEmpty',{ ' '' NA', 'N / A'}
'TreatAsEmpty',[ “ ”“ NA”, “N / A”]
。
NA
'TextType'
“字符”
'串'
键入导入的文本数据,指定为逗号分隔的一对组成的'TextType',要么“字符”要么'串'。
“字符”- 导入文本数据到MATLAB的特征向量。
'串'- 导入文本数据到MATLAB的字符串数组。
例:'TextType', '炭'
'TextType', '炭'
'DatetimeType'
'约会时间'
'exceldatenum'
键入进口日期和时间数据,指定为逗号分隔的一对组成的'DatetimeType'这些值之一:'约会时间','文本', 要么'exceldatenum'。价值'exceldatenum'仅适用于电子表格文件,而不是有效的文本文件。
MATLAB约会时间数据类型
约会时间
欲了解更多信息,请参阅约会时间。
如果'DatetimeType'被指定为'文本',然后进口日期和时间数据的类型取决于在所指定的值'TextType'参数:
如果'TextType'设定为“字符”,然后进口函数返回日期作为字符向量的单元阵列。
如果'TextType'设定为'串',然后进口函数返回日期作为字符串的数组。
Excel中的序列日期数字
串行日期数是单一的数等于天数从一个给定的基准日期。Excel中的序列日期数字使用比MATLAB序列日期编号不同的参考日期。有关Excel的日期的详细信息,请参阅https://金宝appsupport.microsoft.com/en-us/kb/214330。
https://金宝appsupport.microsoft.com/en-us/kb/214330
标志保持变量名,指定为逗号分隔的一对组成的PreserveVariableNames,要么真正, 要么假。
PreserveVariableNames
真正- 保留变量名是无效MATLAB标识,如包括空格和非ASCII字符变量名。
假- 转换无效的变量名称(如由确定isvarname功能),有效MATLAB标识符。
isvarname
在R2019b开始,变量名和列名可以包含任何字符,包括空格和非ASCII字符。此外,他们可以与任何字符,而不仅仅是字母开头。变量和列名不必是有效的MATLAB标识符(如由确定isvarname功能)。为了保存这些变量名和行名,集PreserveVariableNames至真正。
“分隔符”
字段分隔符,指定为逗号分隔的一对组成的“分隔符”和字符向量,特征向量的单元阵列,或一个字符串。指定分隔符使用任何有效的字符如逗号''或周期''。
''
下表列出了一些常用的字段分隔符。
符
字段分隔符
'逗号'
逗号
“”
'空间'
空间
'\ t'
'标签'
标签
';'
'半'
分号
'|'
'酒吧'
竖线
如果没有指定,readtable自动检测的分隔符。
要连续分隔符视为一个分隔符,指定分隔符作为字符向量的单元阵列。此外,您还必须指定MultipleDelimsAsOne选项。
例:'分隔符', ''要么“分隔符”,“逗号”
'分隔符', ''
“分隔符”,“逗号”
数据类型:烧焦|串|细胞
细胞
'HeaderLines'
线跳过在该文件的开始,指定为逗号分隔的一对组成的'HeaderLines'和一个正整数。如果没有指定,readtable自动检测线跳过数。
数据类型:单|双
单
'格式'
'汽车'
该文件的列格式,指定为逗号分隔的一对组成的'格式'和具有一个或多个转换说明,或字符向量或标量串'汽车'。转换标识符是作为说明符接受由相同的textscan功能。
textscan
指定格式可以显著提高速度,一些大的文件。如果没有指定的值格式, 然后readtable使用%q解读非数字列。该%q符读取文本,省略了双引号(“) 如果合适的话。
%q
“
如果不指定'格式'名称 - 值对,则readtable好像你已经使用的结果函数的行为detectImportOptions功能导入数据。有关此行为的后果的详细信息,请参阅兼容性注意事项。
如果您指定“格式”,“自动”,然后创建了变量双阵列,字符向量的单元阵列,或约会时间阵列,这取决于数据。如果整列是数字,变量输入为双。如果在一列中的任何元素不是数字,变量被导入为特征向量的单元阵列,或作为约会时间如果值阵列表示日期和时间。
'EmptyValue'
在分隔文本文件空数字字段返回的值,指定为逗号分隔的一对组成的'EmptyValue'和一个标量。
'MultipleDelimsAsOne'
0(假)
1(真)
多个定界符处理,指定为逗号分隔的一对组成的'MultipleDelimsAsOne',要么真正要么假。如果真正,然后进口函数将连续的分隔符作为一个单一的分隔符。由空格分开的重复分隔符也被视为单个分隔符。你还必须指定分隔符选项。
例:'MultipleDelimsAsOne',1
'MultipleDelimsAsOne',1
'CollectOutput'
逻辑指示符确定数据级联,指定为逗号分隔的一对组成的'CollectOutput',要么真正要么假。如果真正,然后进口函数连接相同的基本MATLAB类的连续的输出细胞成一个单一的阵列。
'CommentStyle'
符号指定文本忽略,指定为逗号分隔的一对组成的'CommentStyle'和字符向量,特征向量,字符串或字符串数组的单元阵列。
例如,指定的字符,例如'%'忽略文本在同一行的符号以下。指定两个字符载体,如的单元阵列{ '/ *', '* /'},忽视这些序列之间的任何文本。
'%'
{ '/ *', '* /'}
MATLAB检查不是场内仅在每个字段的开始评论。
例:'CommentStyle',{ '/ *', '* /'}
'CommentStyle',{ '/ *', '* /'}
'ExpChars'
'EEDD'
指数字符,指定为逗号分隔的一对组成的'ExpChars'和字符向量或字符串。默认的指数字符Ë,Ë,d和d。
Ë
d
'行结束'
端的行字符,指定为逗号分隔的一对组成的'行结束'和字符向量或字符串。字符载体必须是'\ r \ N'或者它必须指定单个字符。端的行共同字符是一个新行字符('\ n')或回车('\ r')。如果您指定'\ r \ N',那么导入功能对待任何的\ r,\ n以及两者的组合(\ r \ n)作为结束行字符。
'\ r \ N'
'\ n'
'\ r'
\ r
\ n
\ r \ n
端的行的默认序列是\ n,\ r, 要么\ r \ n,这取决于你的文件的内容。
如果存在缺少值,并在文件的最后一行的末尾的结束线序,然后进口函数返回这些字段为空值。这确保了单个细胞在输出单元阵列,C,大小相同。
C
例:'行结束',':'
'行结束',':'
'DateLocale'
区域设置用于读取日期,指定为逗号分隔的一对组成的'DateLocale'和字符向量或形式的字符串标量XX_YY其中:
XX_YY
XX
YY
YY是大写ISO 3166-1的α-2代码表示的国家。
XX是指示语言小写的ISO 639-1双字母代码。
对于语言环境共同值的列表,请参阅语言环境的名称 - 值对参数约会时间功能。
语言环境
当使用%d格式说明读取文本约会时间值,使用DateLocale指定其中进口函数应该解释月份和星期几,名称和缩写的语言环境。
如果您指定DateLocale参数除了OPTS导入选项,那么进口功能利用指定的值DateLocale参数,它将覆盖导入选项定义的语言环境。
例:'DateLocale', 'Ja_JP表示'
'DateLocale', 'Ja_JP表示'
“编码”
'UTF-8'
'ISO-8859-1'
'窗口-1251'
“窗口1252”
字符编码方案与文件相关联,指定为逗号分隔的一对组成的“编码”和'系统'或标准字符编码方案名称。如果不指定任何编码时,readtable函数使用自动字符集检测来确定所述编码读取文件时。
'系统'
如果您指定“编码”参数除了导入选项,那么readtable函数使用对指定的值“编码”,覆盖在导入选项中定义的编码。
例:'编码', 'UTF-8'使用UTF-8编码。
'编码', 'UTF-8'
例:“编码”,“系统”使用系统默认编码。
“编码”,“系统”
'DurationType'
“持续时间”
从文本文件的持续时间数据的输出的数据类型,指定为逗号分隔的一对组成的'DurationType',要么“持续时间”要么'文本'。
MATLAB持续时间数据类型
持续时间
欲了解更多信息,请参阅持续时间。
如果'DurationType'被指定为'文本',然后进口持续时间数据的类型取决于在所指定的值'TextType'参数:
如果'TextType'是“字符”,然后进口函数返回的持续时间的数据作为字符向量的单元阵列。
如果'TextType'是'串',然后进口函数返回的持续时间数据作为一个字符串数组。
'INT8'
'INT16'
十六进制数据的输出的数据类型,指定为逗号分隔的一对组成的'HexType'和值中的一个在表中列出。
输入文件表示十六进制值的文本,即使用0X要么0X作为前缀和人物0-9,一个-F和一个-F作为数字。(大写和小写字母表示相同的数字,例如,'0xf'和'0xF'都代表15。)
9
一个
F
'0xf'
'0xF'
15
进口功能十六进制值转换为通过的值指定的数据类型'HexType'。
的价值'HexType'
输出表变量数据类型
数据类型自动检测
不变输入文本
8位整数,签署
16位整数,签署
'INT32'
32位整数,签署
'的Int64'
64位整数,签署
'UINT8'
8位整数,无符号
'UINT16'
16位整数,无符号
'UINT32'
32位整数,无符号
'UINT64'
64位整数,无符号
例:'HexType', 'UINT16'将表示十六进制值的文本(例如'0xFF的'),以16位无符号整数(如255)在输出表中。
'HexType', 'UINT16'
'0xFF的'
255
二进制数据的输出的数据类型,指定为逗号分隔的一对组成的'BinaryType'和值中的一个在表中列出。
输入文件表示的二进制值作为文本,即使用0B要么0B作为前缀和人物0和1作为数字。
进口函数的二进制值转换成由的值指定的数据类型'BinaryType'。
的价值'BinaryType'
例:'BinaryType', 'UINT16'将表示的二进制值的文本(例如'0b11111111'),以16位无符号整数(如255)在输出表中。
'BinaryType', 'UINT16'
'0b11111111'
'片'
工作表读取,指定为逗号分隔的一对组成的'片'和一个正整数,指示工作表索引或字符载体或含有该工作表名的字符串。工作表名称不能包含冒号(:)。要确定一个电子表格文件,使用表的名称片材= sheetnames(文件名)。欲了解更多信息,请参阅sheetnames。
:
片材= sheetnames(文件名)
sheetnames
如果您指定片参数除了OPTS导入选项,那么readtable函数使用对指定的值片参数,覆盖在导入选项中定义的表名称。
例:'片',2
2
例:'片','MySheetName'
'MySheetName'
例:'片',“MySheetName”
“MySheetName”
数据类型:烧焦|串|单|双|INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64
INT8
INT16
Int64的
UINT64
'范围'
工作表以读,指示为由逗号指定的矩形区域的部分分开一对组成的'范围'和以下列形式中的一种的字符向量或标量的字符串。
'细胞'要么[行山口]
'细胞'
[行山口]
起始单元格
指定数据作为字符向量或标量字符串或两个元素的数值向量起始细胞。
含有使用Excel一列字母和行号字符向量或标量串A1符号。例如,A5是在列的交叉点的标识符的单元一个和行五。
A1
A5
五
形式的两个元件数值向量[行山口]指示起始行和列。
使用起始细胞,进口功能自动开始导入在开始细胞,并在最后一个空行或注脚范围结束检测数据的范围。
例:'A5'要么[5 1]
'A5'
[5 1]
“Corner1:Corner2“
Corner1:Corner2
范围矩形
使用语法指定范围“Corner1:Corner2“,其中Corner1和Corner2是定义区域两个相对的拐角。例如,'D2:H4'表示两个角部之间的3×5的矩形区域D2和H4在工作表中。该'范围'名称 - 值对的说法是不区分大小写,并使用Excel的A1引用样式(请参阅Excel的帮助)。
Corner1
Corner2
'D2:H4'
D2
H4
例:'范围', 'Corner1:Corner2'
'范围', 'Corner1:Corner2'
未指定或空
如果没有指定,readtable自动检测所使用的范围。
例:'范围',''
'范围',''
注意:使用范围指的是实际上包含数据电子表格的矩形部分。readtable自动检测通过修整不包含任何数据的前缘和后的行和列所使用的范围。文本即只有白色空间被认为是数据,并且所使用的范围内被捕获。
“ROW1:行2“
ROW1:行2
行范围
您可以通过指定的开始和结束使用Excel列代号行识别范围。然后readtable自动检测指定行内所使用的列范围。例如,readtable解释该范围指定'1:7'通过7(含)读取所有列以行1所使用的范围的指令。
'1:7'
例:'范围', '1:7'
'范围', '1:7'
“列1:列2“
列1:列2
列范围
您可以通过指定的开始和结束使用Excel列代号列识别范围。然后readtable自动检测指定的列内所使用的行范围。例如,readtable解释该范围指定'A:F'作为指令通过F(含)至读取在所使用的范围的所有行中列A。
'A:F'
例:'范围', 'A:F'
'范围', 'A:F'
“NamedRange“
NamedRange
Excel的命名范围
在Excel中,您可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格中的矩形区域,并调用它'myTable的'。如果在电子表格中存在这样的命名范围,然后readtable可以使用其名称读取范围。
'myTable的'
例:'范围', 'myTable的'
'范围', 'myTable的'
例:'范围','A1:F10'
'A1:F10'
例:'范围',“A1:F10”-
“A1:F10”
'UseExcel'
标志开始的一个实例Microsoft Excel中用于Windows读取的电子表格数据时,指定为逗号分隔的一对组成的'UseExcel',要么真正, 要么假。
您可以设置'UseExcel'参数将这些值中的一个:
真正- 在导入函数读取文件时启动的Microsoft Excel的一个实例。
假- 读取文件时,导入功能不会启动Microsoft Excel的一个实例。在这种模式中,支持的文件格式和互动功能,如公式和宏导入功能不同的功能操作。金宝app
.xls的,.XLSX,.XLSM,.xltx,.xltm,.xlsb,.ods档案
.xls的,.XLSX,.XLSM,.xltx,.xltm
金宝app交互功能,如公式和宏支持
是
没有
从电子表格文件中读取Windows平台上的时候,如果要启动的实例Microsoft Excel中,然后设置'UseExcel'参数真正。
输出表,返回表。该表可存储元数据,例如描述,可变单元,变量名,和行的名称。欲了解更多信息,请参阅的属性部分表。
表
在XLSX格式的大文件有时加载缓慢。为了更好的导入和导出性能,Microsoft建议您使用XLSB格式。
展开全部
行为R2020a改变
默认情况下,readtable函数使用的结果detectImportOptions功能导入表格数据。从本质上说,这两个函数调用的行为相同。
T = readtable(文件名)T = readtable(文件名,detectImportOptions(文件名))
在R2020a,还有的默认行为之间的一些差异readtable在以前的版本和它的默认行为。
输入字段或行的说明
默认R2020areadtable行为
在以前的版本默认行为
第一行没有文本指定为输出表变量名
分配名字VAR1,...,瓦尔ñ作为输出表变量的名称
VAR1,...,瓦尔ñ
数据值的第一行中的值转换为输出表变量的名称
多个文本行作为标题行
忽略附加标题行
在剩余的行所检测的数据类型进口值
导入其他标题行作为文本在输出表中的第一行
在其余各行作为文本导入值
空字段
治疗作为检测到的数据类型的缺失值
[视为空字符向量或字符串
在引号值
当作检测到的数据类型
治疗为文本
文本不能转换
数字字符落后于数字字符,没有他们之间的分隔符
对待字符的非数字
享受数字和非数字字符,仿佛分隔符分隔它们
输入文本文件有不同数量的分隔符行
与其他变量返回的输出表
引发错误信息
调用readtable它有高达R2019b的默认行为,使用“格式”,“自动”名称 - 值对的参数。
T = readtable(文件名,'格式','汽车')
导入工具|detectImportOptions|预习|readcell|readmatrix|readtimetable|readvars|setvaropts|表|textscan|writetable
预习
readcell
readmatrix
readtimetable
readvars
writetable
这个例子的修改版本的系统上存在。你要打开这个版本呢?
您单击对应于该MATLAB命令的链接:
在MATLAB命令窗口中输入它运行的命令。Web浏览器不支持MATLAB的命令。金宝app
选择一个网站,以获得翻译的内容,其中可看到当地的活动和优惠。根据您的位置,我们建议您选择:。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。
请联系您当地的办事处