主要内容

readtable

从文件创建表

描述

例子

T= readtable (文档名称通过从文件读取面向面向的数据来创建表。

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

  • 。文本.dat, 或者.csv.用于分隔的文本文件

  • xls.xlsb..xlsm..xlsx..xltm..xltx., 或者.ods.电子表格文件

  • . xml对于可扩展标记语言(XML)文件

对于文本和电子表格文件,readtable创建一个变量T读取文件的每一列,并从文件的第一行读取变量名。XML文件,readtable创建一个变量T对于检测为表变量的每个元素或属性节点。变量名称对应于元素和属性名称。

默认情况下,readtable创建具有适合于在输入文件的每列中检测到的数据值的数据类型的变量。

例子

T= readtable (文档名称选择使用导入选项创建表选择

例子

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

要为数据设置特定的导入选项,您可以使用选择对象,也可以指定名称-值对。当您指定名称-值对时选择那么readtable金宝app仅支持以下名称-值对:

  • 文本和电子表格参数 -readvariablenames.readrownames.

  • 文本只参数 -DateLocale编码

  • 仅电子表格参数-床单meftexcel.

例子

全部折叠

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

文件名=“myCsvTable.dat”

从逗号分隔的文本文件创建一个表。结果表T为文件中的每一列包含一个变量readtable将文件的第一行的条目视为变量名称。

t = readtable(文件名)
t =5×6表姓氏性别年龄高度减肥____________ _____________________________________________} 38 71 176 1 {'johnson'} {'m'} 43 69 163 0 {'威廉姆斯'} {'f'}38 64 131 0 {'jones'} {'f'} 40 67 133 0 {'brown'} {'f'} 49 64 119 0

从R2020a开始readtable函数读取输入文件,好像它自动调用侦探文件上的功能。它可以检测数据类型,丢弃额外的标题线,并填写缺失值。

例如,预览文件headersAndMissing.txt在文本编辑器中。该文件有一行带有列名,另一行带有标题。最后两行有间隙,前两行有数据值。

从文件中创建一个表。的readtable函数将丢弃头信息。此外,它还用适当的缺失值(a)填充空白数字变量的值,以及文本的空字符向量。

t = readtable('标题andmissing.txt'
t =5×6表姓氏性别年龄高度减肥___________ ______________ ______ ______ {'吴'} {'m'} 38 71 176 1 {'m'} {'m'} {'m'} 43 69 163 0 {'sanchez'} {'f'}38 64 131 0 {'棕色'} {'f'} nan 67 133 0 {'picard'} {0x0 char} nan 64 119 0

要恢复以前版本的默认行为,请指定“格式”、“汽车”名称-值对的论点。readtable将标题作为数据读取,结果将所有表变量转换为文本。

t = readtable('标题andmissing.txt''格式'“汽车”
t =6×6表Lastname性别年龄高度减肥___________ __________ _____________________________________________________________} {'int'} {'int'} {'boolean'} {'boolean'} {'wu'} {'m'} {'71'} {'171'} {'176'} {'1'} {'1'} {'johnson'} {'m'} {'m'} {'43'} {'69'} {'69'} {'163'} {'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  _____ ____ ____ ______ _________ {' 45 45 M '}{“纽约”}{“真实”}{' F '} 41 32{“CA”}{“假”}{“M”}40 34{‘马’}{“假”}

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

文件名=“myCsvTable.dat”

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

t = readtable(文件名,'格式''%s%s%f%f%s'
t =5×6表姓氏性别年龄高度减肥____________ _____________________________________________________________'m'} {'m'} {'0'} {'0'} {'威廉姆斯'} {'f'} 38 64 131 {'0'} {'jones'} {'f'} {'f'} 40 67 133 {'0'} {'brown'} {'f'} {'f'} 49 64 119 {'0'}

转换说明符为%对于字符向量的单元格数组,%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 _________________________ 01 2014年1月20日20.2 100.5 01 2014年2月21.6 102.7 01 2014年3月20.7 99.8

从电子表格中创建一个表,该表包含第一行中的变量名和第一列中的行名。

t = readtable('患者xls''readrownames',真的);

显示表的前5行和前4个变量。

T (1:5, 1:4)
ans =.5×4表性别年龄位置高度  __________ ___ _____________________________ ______ 史密斯{‘男性’}38{县综合医院的}71年约翰逊43{‘男性’}{VA医院的}69年威廉姆斯{‘女性’}38{圣。玛丽医疗中心琼斯女VA医院布朗女县综合医院

观看DimensionNames表格的财产。

T.Properties.DimensionNames
ans =1 x2单元格{'lastname'} {'变量'}

“姓”是电子表格第一行的第一列中的名称。

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

t = readtable('患者xls'......“范围”'C2:E6'......“ReadVariableNames”假)
T = var1 var2 var3 ____ ______________________________________ _ ___________MECHING'69 38'33'T.玛丽的医疗中心'64 40'VA医院'67 49'县综合医院64

T包含默认变量名称。

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

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

选择= detectImportOptions ('airlinesmall.csv'
opts=DelimitedTextImportOptions和属性:格式属性:分隔符:{',}空白:'\b\t'行尾:{'\n'\r'\r\n'}注释样式:{}ConcertiveDelimiterRule:'split'LeadingDelimiterRule:'keep'TrailingDelimiterRule:'ignore'EmptyLineRule:'skip'编码:'ISO-8859-1'替换属性:MissingRule:'fill'ImportErrorRule:'fill'ExtraColumnsRule:'addvars'变量导入属性:使用setvartype VariableNames按名称设置类型:{'Year'、'Month'、'DayofMonth'…和26个以上}变量类型:{'double'、'double'、'double'…和26个以上}选择的变量名称:{'Year'、'Month'、'DayofMonth'…和26个以上}VariableOptions:显示所有29个VariableOptions使用setvaropts/getvaropts VariableName访问VariableOptions子属性:“修改”位置属性:数据行:[2 Inf]VariableNamesLine:1行名称列:0 VariableUnitsLine:0 VariableDescriptionsLine:0若要显示表的预览,请使用preview

检查类型变量的属性TaxiIn滑行

getvaropts(选项{“TaxiIn”“TaxiOut”})
ans = 1x2 textvarifeimportionsoptions arrow ression:name类型fillvalue injamissing QuoteRule Prefixes stumpyfieldrule whitespacerule

更改变量的类型TaxiIn滑行双倍的

opts = setvartype(opts,{“TaxiIn”“TaxiOut”},“双”);

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

opts.selectedvariablenames = {“TaxiIn”“TaxiOut”};

使用readtable函数以及选项对象以导入所选变量。显示表的摘要。

t = readtable('airlinesmall.csv',选项);摘要(T)
变量:出租车:123523x1双倍值:Min 0中位数5 MAX 1451 Nummissing 37383 Taxiout:123523x1双值:Min 0中位数13 Max 755 Nummissing 37364

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

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

选择= detectImportOptions ('患者xls'
opts =带有属性的SpepsheheTimportOptions:表格属性:纸张:''替换属性:迷失rule:'fill'importerrule:'fill'变量导入属性:使用setvartype variablenames按名称设置类型:{'lastname','性别','年龄'......和7更多} variabletypes:{'char','char','double'...和7更多} selectedvariablenames:{'lastname','性别','年龄'...和7更多}变化:Show all 10 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts VariableNamingRule: 'modify' Range Properties: DataRange: 'A2' (Start Cell) VariableNamesRange: 'A1' RowNamesRange: '' VariableUnitsRange: '' VariableDescriptionsRange: '' To display a preview of the table, use preview

修改options对象以指定要导入的变量。

opts.selectedvariablenames = {'收缩''舒张'};

使用readtable以及选项对象以导入指定变量。

t = readtable('患者xls',选项);摘要(T)
变量:收缩期:100x1双重值:MIN 109中位数122 MAX 138舒张:100x1双值:MIN 68中位数81.5 MAX 99

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

创建包含任意变量名称的表,并将表格数据写入文件“sampletable.txt”

LastName = {“桑切斯”“约翰逊”“李”'迪亚兹''棕色的'};年龄= [38; 43; 38; 40; 49];吸烟者=逻辑([1; 0; 1; 0; 1]);varnames = {“姓”“年龄”'吸烟(1或0)'};T =表(LastName、年龄、抽烟,'variablenames',varNames)
t =5×3表姓名年龄吸烟者(1或0 ) ___________ ___ _______________ {' 桑切斯的38}真{“约翰逊”}43假{‘李’}38真{“Diaz”}40假{“棕色”}49真的
可编程(T,“sampletable.txt”

使用读取表格数据readtable.默认情况下,MATLAB®将任何包含空格和非ascii字符的变量名称转换为有效的MATLAB®标识符。例如,MATLAB®转换变量名“姓”“姓”,'吸烟(1或0)'“Smoker_1or0_”.要在保留变量名称时读取表格数据,请设置'variablenamingrule'参数到保存

T_preserve = readtable (“sampletable.txt”“variablenamingrule”“保存”
t_preeserve =.5×3表姓氏年龄吸烟者(1或0)___________ _____________________ {'sanchez'} 38 1 {'johnson'} 43 0 {'li'} 38 1 {'diaz'} 40 0 {'brown'} 49 1

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

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

使用以下命令读取文件readtable.该功能检测数字0x.0B.前缀并将其存储为整数。第三列没有前缀,因此其值被视为文本。

t = readtable('hexandbinary.txt'
t =3×4表var1 var2 var3 var4 _____ ____ ____________________________________________________________________________________________________'deve1'} 256 4 {device2'} {'device2'} 43981 129 {'f00f'} {'device3'}

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.

选择= detectImportOptions ('hexandbinary.txt'
opts = DelimitedTextImportOptions with properties: Format properties: Delimiter:{','}空白:'\b\t ' LineEnding: {'\n' '\r' '\r\n'} CommentStyle: {} ConsecutiveDelimitersRule: 'split' LeadingDelimitersRule: 'keep' TrailingDelimitersRule: 'ignore' EmptyLineRule: 'skip' Encoding: 'UTF-8'替换属性:missinggrule:'fill' ImportErrorRule: 'fill' ExtraColumnsRule: 'addvars'变量导入属性:使用setvartype VariableNames: {'Var1', 'Var2', 'Var3'…{'auto', 'auto', 'char'…{'Var1', 'Var2', 'Var3'…和1}VariableOptions:显示所有4 VariableOptions访问VariableOptions sub-properties使用setvaropts / getvaropts VariableNamingRule:“修改”位置属性:DataLines:[1正]VariableNamesLine: 0 RowNamesColumn: 0 VariableUnitsLine: 0 VariableDescriptionsLine: 0显示表的预览,预览使用

要指定第三列应该作为十六进制值导入,尽管没有前缀,请使用setvaropts函数修改表的第三变量的变量类型。将变量类型设置为INT32.

选择= setVaropts(选择,3,'numbersystem''六角''类型''int32'
opts = DelimitedTextImportOptions with properties: Format properties: Delimiter:{','}空白:'\b\t ' LineEnding: {'\n' '\r' '\r\n'} CommentStyle: {} ConsecutiveDelimitersRule: 'split' LeadingDelimitersRule: 'keep' TrailingDelimitersRule: 'ignore' EmptyLineRule: 'skip' Encoding: 'UTF-8'替换属性:missinggrule:'fill' ImportErrorRule: 'fill' ExtraColumnsRule: 'addvars'变量导入属性:使用setvartype VariableNames: {'Var1', 'Var2', 'Var3'…和1more} 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 VariableNamingRule: 'modify' 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',选择)
t =3×4表var1 var2 var3 var4 _____ ___________________________________________________________'device2'} 43981 129 61455 {'device3'} 43981 129 61455 {'device3'}

为XML文件创建XML导入选项,指定要导入的变量,然后读取数据。

XML文件students.xml有四个兄弟节点命名学生,它们包含相同的子节点和属性。

类型students.xml
<?XML Version =“1.0”编码=“UTF-8”?> <学生> <学生ID =“s11305”>  <年龄> 18 <一年>新生 <地址>  591 spring lane   natick   ma  <主要>计算机科学 英语文学    <年龄> 18  <年>新生 <地址>  4641珍珠街  San Francisco  <州> CA   <主要>微生物学 公共健康   年龄> 21  <年龄>高级 <地址>  30 Highland Road   Detriot  mi   政治学    <年龄> 19  <年> Sophomore  <地址>  3388 Moore Avenue   Fort Vists  tx   业务 日语   年龄> 20  <年> Sophomore  <地址>  3388 Moore Avenue  <城市>沃思堡 <州> TX   业务 日语    <年龄> 22  <年>高级 <地址> 22一个ngie Drive Los Angeles CA  Mechanical Engineering Architecture    21 Junior 
65 Decatur Lane Trenton ME
Economics Art History

创建一个xmlimportoptions.对象。指定的值可变选择器作为//@名选择元素节点作为表变量导入。

opts = xmlimportoptions(“VariableSelectors”“//@名”
opts =具有属性的XmlimportOptions:replacement属性:迷失性:“fill”ImportErrule:“填充”repectedNodeRule:“addCol”变量导入属性:按名称使用setvartype variablenames设置类型:“var1”variabletypes:“char”selectedvariablenames:“var1”变量选项:Show all 1 VariableOptions Access VariableOptions sub-properties using setvaropts/getvaropts VariableNamingRule: "preserve" Location Properties: TableSelector:  RowSelector:  VariableSelectors: "//@FirstName" VariableUnitsSelector:  VariableDescriptionsSelector:  RowNamesSelector:  RegisteredNamespaces: [0x2 string]

使用readtable以及选项对象以导入指定变量。

t = readtable(“学生xml”,选择)
t =7×1表var1 __________ {'priya'} {'conor'} {'摩根'} {'salim'} {'salim'} {'salim'} {'dania'} {'rikki'}

注册自定义XML命名空间前缀,使用输入文件中的现有名称空间URL注册NameSpaces.名称值参数。

创建一个xmlimportoptions.来自XML文件的对象。指定XPath表达式元素节点的值'VariablingElectors',并注册前缀MyPrefix.到属于的URL节点。

选择= detectImportOptions (“学生xml”“RegisteredNamespaces”, (“myprefix”“//www.tatmou.com”],......“VariableSelectors”" / / myPrefix:街”
opts = XMLImportOptions with properties: Replacement properties: missinggrule: "fill" importterrorrule: "fill" RepeatedNodeRule: "addcol"变量导入属性:使用setvartype VariableNames: "Street" VariableTypes: "string" SelectedVariableNames: "Street" VariableOptions:使用setvaropts/getvaropts variablemingrule: "preserve" Location Properties: TableSelector:  RowSelector:  variableelector: "//myPrefix:Street" VariableUnitsSelector:  VariableDescriptionsSelector:  RowNamesSelector:<缺少> RegisteredNamespaces: ["myPrefix" "//www.tatmou.com/au/"]

使用readtable函数以及选项对象以导入所选变量。

T2 = readtable (“学生xml”,选择)
T2 =7×1表街道___________________“591春灯”“4641珍珠街”“30 Highland Road”“3388 Moore Avenue”“3388 Moore Avenue”“22 Angie Drive”“65 Decatur Lane”

输入参数

全部折叠

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

根据您的文件的位置,文档名称可以表现为这些形式中的一种。

地点

形式

Matlab上的当前文件夹或文件夹®小路

中指定文件的名称文档名称

例子:'myfile.txt'

文件夹中的文件

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

例子:'c:\ myfolder \ myfile.xlsx'

例子:“dataDir \ myFile.txt”

互联网网址

如果文件指定为Internet统一资源定位器(URL),则文档名称必须包含协议类型'http://'“https://”

例子:'http://hostname/path_to_file/my_data.csv'

远程位置

如果文件存储在远程位置,则文档名称必须包含表单指定的文件的完整路径:

scheme_name.://path_to_file./my_file.ext.

基于偏远的地理位置,scheme_name.可以是此表中的值之一。

远程位置 scheme_name.
亚马逊S3™ S3
WindowsAzure®Blob存储 黄金草原
HDFS™ HDFS.

有关更多信息,请参阅使用远程数据

例子:s3: / / bucketname / path_to_file / my_file.csv '

  • 如果文档名称包括文件扩展名,然后导入函数从扩展名确定文件格式。否则,您必须指定'文件类型'名称 - 值对参数指示文件类型。

  • 在Windows上®与微软系统®excel.®软件中,导入功能可读取您的Excel版本识别的任何Excel电子表格文件格式。

  • 如果您的系统没有Windows的Excel,或者您正在使用Matlab Online™时,导入函数使用meftexcel.属性设置为假的,只读.xls,.xlsx,.xlsm,.xltx和.xltm文件。

  • 对于带分隔符的文本文件,导入函数将文件中的空字段转换为任意一种(对于数值变量)或空字符向量(对于文本变量)。文本文件中的所有行必须具有相同数量的分隔符。导入函数忽略文件中不重要的空白。

数据类型:char|细绳

文件导入选项,指定为SpreadSheetimportOptions.delimitedtextimportoptions.FixedWidthImportOptions, 或者xmlimportoptions.对象创建的侦探函数。的选择对象包含控制数据导入过程的属性。有关每个对象属性的更多信息,请参阅适当的对象页面。

文件类型 输出
电子表格文件 SpreadSheetimportOptions.对象(仅对床单数据范围,variablenames.属性)
文本文件 delimitedtextimportoptions.对象
宽度固定的文本文件 FixedWidthImportOptions对象
XML文件 xmlimportoptions.对象

名称-值对的观点

指定可选的逗号分隔的对名称,值论点。姓名是参数名和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:'readvariablenames',false指示文件的第一行不对应于变量名。
所有支持金宝app的文件类型

全部折叠

文件类型,指定为逗号分隔对,由'文件类型'其中一个值。

价值 文件导入选项
“表格”

返回一个SpreadSheetimportOptions.对象。

'文本'

返回一个delimitedtextimportoptions.FixedWidthImportOptions对象根据文本文件的布局。

“delimitedtext”

返回一个delimitedtextimportoptions.对象。使用此选项对于包含分隔符分隔的列的文本文件。

“fixedwidth”

返回一个FixedWidthImportOptions对象。使用此选项对于具有固定宽度列的文本文件。

“xml”

返回一个xmlimportoptions.对象。对XML文件使用此选项。

使用'文件类型'名称-值对参数文档名称不包括文件扩展名,或者当扩展名不是其中之一时:

  • 。文本.dat, 或者.csv.为文本文件

  • xls.xlsb..xlsm..xlsx..xltm..xltx., 或者.ods.电子表格文件

  • . xml,对于XML文件

例子:'filetype','text'

数据类型:char|细绳

读取第一列作为行名称的指示器,指定为逗号分隔的对'readrownames'和任何一种假的真正的0, 或者1

指示器

描述

假的

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

真正的

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

未指明 当离开不明,readtable假设假的

笔记:如果“ReadVariableNames”'readrownames'逻辑指标是真正的那么readtable将名称保存在区域的第一行的第一列中以读取属性中的第一维名称,T.Properties.DimensionNames

如果指定readrownames.除…之外选择导入选项,然后readtable基于规范的行为更改:

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

  • 如果readrownames.假的,然后不要导入行名称。

占位符文本以作为空值处理,指定为逗号分隔的配对组成“治疗减少”和字符向量,字符向量,字符串或字符串数​​组的单元格数组。对应于这些字符的表元素设置为

“治疗减少”仅适用于文件中的数字列,readtable不接受数字字面值,例如'-99'

例子:'尾声','n / a'“TreatAsMissing”、“N / A”N / A.在数字列中

例子:“尾声”,{'。','na','n / a'}“TreatAsMissing”,(“。”,“NA”、“N / A”)NAN / A.在数字列中

数据类型:char|细绳

输入导入的文本数据,指定为逗号分隔的配对组成'texttype'和任何一种“字符”'细绳'

  • “字符”- 将文本数据导入MATLAB作为字符向量。

  • '细绳'- 将文本数据导入MATLAB作为字符串数组。

例子:'texttype','char'

类型用于导入的日期和时间数据,指定为由“DatetimeType”其中一个值:'约会时间''文本', 或者'ExceldateNum'.价值'ExceldateNum'只适用于电子表格文件,而不适用于文本文件。

价值 导入的日期和时间数据的类型
'约会时间'

马铃薯datetime数据类型

有关更多信息,请参阅datetime

'文本'

如果“DatetimeType”被指定为'文本',然后输入日期和时间数据的类型取决于所指定的值'texttype'范围:

  • 如果'texttype'被设定为“字符”,则导入函数以字符向量单元格数组的形式返回日期。

  • 如果'texttype'被设定为'细绳',然后导入函数将日期返回为字符串数组。

'ExceldateNum'

Excel序列日期号码

序列号是一个单独的数字,等于从给定的参考日期开始的天数。Excel串行日期数字使用不同的参考日期比MATLAB串行日期数字。有关Excel日期的更多信息,请参见https://金宝appsupport.microsoft.com/en-us/kb/214330

数据类型:char|细绳

标志以保留变量名称,指定为逗号分隔的配对组成VariableNamingRule和任何一种“修改”'保存'

  • “修改”- 转换无效的变量名称(由此确定)isvarname功能)到有效的MATLAB标识符。

  • '保存'- 保留不具有有效MATLAB标识符的变量名称,例如包含空格和非ASCII字符的变量名称。

从R2019b开始,变量名和行名可以包含任何字符,包括空格和非ascii字符。此外,它们可以以任何字符开头,而不仅仅是字母。变量和行名不一定是有效的MATLAB标识符(由isvarname功能)。要保留这些变量名称和行名称,请设置值VariableNamingRule'保存'

数据类型:char|细绳

文本和电子表格文件

全部折叠

将第一行作为变量名读取的指示符,指定为逗号分隔对,由“ReadVariableNames”和任何一种真正的假的1, 或者0.如果未指定,readtable自动检测变量名称的存在。

指示器

描述

真正的

使用当要读取的区域的第一行包含表中的变量名称。readtable为中的每一列创建一个变量,并使用检测到的变量名T

假的

当要读取的第一行包含表中的数据时使用。readtable创建表单的默认变量名“Var1”,…,“VarN”, 在哪里N是变量的数量。

未指明 当离开不明,readtable自动检测真正的假的并相应地进行。

笔记:如果“ReadVariableNames”'readrownames'逻辑指标是真正的那么readtable将名称保存在区域的第一行的第一列中以读取属性中的第一维名称,T.Properties.DimensionNames

如果指定readvariablenames.除…之外选择进口选项,然后是readtable基于规范的行为更改:

  • 如果readvariablenames.真正的,然后使用。从指定的文件读取变量名VariableNamesRange或者variablenamesline.属性导入选项对象。

  • 如果readvariablenames.假的,然后从中读取变量名称variablenames.属性导入选项对象。

仅文本文件

全部折叠

字段分隔符,指定为逗号分隔对组成'delimiter'和字符向量,字符向量的小区阵列,或字符串。指定分隔符使用任何有效字符,如逗号','或一段时间内“。”

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

说明符

字段分隔符

','

“逗号”

逗号

''

'空间'

空间

'\ t'

“标签”

标签

“;”

'半'

分号

“|”

“酒吧”

垂直条

未指明

如果未指定,readtable自动检测分隔符。

将连续分隔符视为单个分隔符,指定分隔符作为字符向量的单元阵列。此外,您还必须指定多平面塞松选项。

例子:“分隔符”、“,”“分隔符”、“逗号”

数据类型:char|细绳|细胞

在文件开头要跳过的标题行数,指定为逗号分隔对,由'numheaderlines'和一个正整数。如果未指定,readtable自动检测要跳过的行数。

数据类型:单身的|双倍的

文件的列格式,指定为逗号分隔对,由'格式'和具有一个或多个转换说明符的字符向量或字符串标量,或“汽车”.转换说明符与所接受的说明符相同textscan函数。

指定格式可以显著提高一些大型文件的速度。如果没有指定值格式那么readtable用途%q解释Nonnumeric列。的%q说明符读取文本并省略双引号()如果合适。

  • 如果不指定'格式'名称值对,然后是readtable函数表现得像您使用的结果侦探命令,导入数据。有关此行为后果的更多信息,请参见兼容性的考虑

  • 如果您指定“格式”、“汽车”,然后创建的变量是双倍的数组,字符向量的单元格阵列,或datetime数组,具体取决于数据。如果整列为数字,则变量将作为双倍的.如果列中的任何元素不是数字,则将变量作为字符向量的单元格数组导入,或作为datetime如果值表示日期和时间,则使用数组。

数据类型:char|细绳

分隔文本文件中空数值字段的返回值,指定为逗号分隔对,由'extupvalue'和一个标量。

多个分隔符处理,指定为逗号分隔对,由'multipledelimsone'和任何一种真正的假的.如果真正的,则导入函数将连续分隔符视为单个分隔符。由空白分隔的重复分隔符也被视为单个分隔符。还必须指定分隔符选项。

例子:“MultipleDelimsAsOne”,1

确定数据连接的逻辑指示符,指定为由逗号分隔的对组成“收集输出”和任何一种真正的假的.如果真正的然后,导入函数将相同基本MATLAB类的连续输出单元连接到一个数组中。

指定要忽略的文本的符号,指定为逗号分隔对,由“评论风格”和字符向量,字符向量,字符串或字符串数​​组的单元格数组。

例如,指定一个字符,例如'%'忽略同一行符号后面的文本。指定由两个字符向量组成的单元格数组,例如{'/*','*/'},忽略这些序列之间的任何文本。

MATLAB只在每个字段的开头检查注释,而不是在字段内部。

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

数据类型:char|细绳

指数字符,指定为逗号分隔对,由“ExpChars”和一个字符矢量或字符串。默认的指数字符是eEd,D

数据类型:char|细绳

线端字符,指定为逗号分隔对组成“LineEnding”和一个字符矢量或字符串。字符矢量必须是“\r\n”或者它必须指定一个字符。常见的行终点字符是换行符(' \ n ')或回车('\ r').如果您指定“\r\n”,然后导入函数处理任何一个\ R.\ n,以及两者的组合(\ r \ n)作为行终点字符。

默认的行尾序列是\ n\ R., 或者\ r \ n,取决于您的文件的内容。

如果文件中的最后一行末尾的值缺失值和线末尾序列,则导入函数返回这些字段的空值。这可确保输出单元阵列中的单个单元格,C,大小是相同的。

例子:'排队',':'

数据类型:char|细绳

用于阅读日期的区域设置,指定为逗号分隔的配对'datelocale'以及这种形式的字符向量或字符串标量XX._yy., 在哪里:

  • yy.是一个大写ISO 3166-1 Alpha-2代码,指示一个国家。

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

有关区域设置的公共值列表,请参见语言环境名称值对参数datetime函数。

当使用%D格式化说明符以读取文本datetime值,使用DateLocale指定导入函数应该解释月份和日常名称和缩写的语言环境。

如果指定DateLocale除…之外选择导入选项,然后导入函数使用指定的值DateLocale参数,覆盖在导入选项中定义的区域设置。

例子:“DateLocale”、“ja_JP”

与文件相关联的字符编码方案,指定为包含的逗号分隔对“编码”'系统'或编码方案名称的标准字符。当您没有指定任何编码时,readtable函数使用自动字符集检测来确定读取文件时的编码。

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

例子:“编码”,“utf - 8”使用UTF-8作为编码。

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

数据类型:char|细绳

从文本文件输出数据类型的持续时间数据,指定为逗号分隔对'durationtype'和任何一种'期间''文本'

价值 导入持续时间数据的类型
'期间'

马铃薯期间数据类型

有关更多信息,请参阅期间

'文本'

如果'durationtype'被指定为'文本',则导入的持续时间数据的类型取决于'texttype'范围:

  • 如果'texttype'“字符”,则导入函数将持续时间数据作为字符向量的单元格数组返回。

  • 如果'texttype''细绳',然后导入函数以字符串数组的形式返回持续时间数据。

数据类型:char|细绳

十六进制数据的输出数据类型,指定为逗号分隔对“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”转换表示十六进制值的文本(例如“0 xff”)到无符号16位整数(例如255.)在输出表中。

数据类型:char|细绳

二进制数据的输出数据类型,指定为逗号分隔对'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.)在输出表中。

数据类型:char|细绳

从指定为逻辑变量的数字变量中删除非数字字符真正的假的

例子:如果名称-值对指定为“TrimNonNumeric”,true,然后导入功能读取'$500/-'作为500

数据类型:逻辑

电子表格文件只

全部折叠

要读取的工作表,指定为逗号分隔对,由'床单'和一个正整数,指示工作表索引或包含工作表名称的字符向量或字符串。工作表名称不能包含冒号().确定电子表格文件中的纸张名称,使用表格= SheetNames(文件名).有关更多信息,请参阅张贴名录

如果指定床单除…之外选择进口选项,然后是readtable函数使用的指定值床单参数,重写在导入选项中定义的工作表名称。

例子:'床单'2

例子:'床单''mysheetname'

例子:'床单'“mysheetname”

数据类型:char|细绳|单身的|双倍的|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32|UINT64

要读取的工作表的部分,表示为由逗号分隔对指定的矩形区域“范围”和一个字符向量或字符串标量以下列形式之一。

指定的方法范围 描述

“细胞”[行col]

起始牢房

将数据的起始小区指定为字符向量或字符串标量或两个元素数字向量。

  • 使用Excel包含列字母和行号的字符向量或字符串标量A1符号。例如,A5是列中的单元格的标识符一个和行5

  • 表格的两个元素数字矢量[行col]表示起始行和列。

使用启动单元格,导入函数通过在起始单元格上开始导入并在最后一个空行或页脚范围内来自动检测数据的范围。

例子:的A5(5 - 1)

角落1:Corner2.

矩形范围

使用语法指定范围角落1:Corner2., 在哪里角落1角落2是定义区域的两个相对的角。例如,'D2:H4'表示两个角之间的3乘5的矩形区域D2H4在工作表上。的“范围”名称-值对参数不区分大小写,并使用Excel A1引用样式(请参阅Excel帮助)。

例子:'范围','角落1:corner2'

''

未指定或空的

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

例子:'范围',''

笔记:使用范围指实际包含数据的电子表格的矩形部分。readtable通过修剪不包含数据的任何前导行和列来自动检测使用的范围。只有空白空间的文本被视为数据,并在使用的范围内捕获。

row1:row2.

行范围

您可以通过使用Excel行指示符指定开始和结束行来识别范围。然后readtable自动检测指定行中使用的列范围。例如,readtable解释范围规范“1:7”作为读取在行1到7中使用的范围中的所有列(包含)的指令。

例子:“范围”、“1:7的

第1列:Column2.

列范围

您可以通过使用Excel列指示符指定开始和结束列来识别范围。然后readtable自动检测指定列中的使用行范围。例如,readtable解释范围规范“答:F”作为一条指令,读取从列A到列F(包括)中使用范围内的所有行。

例子:“范围”、“答:F '

纳姆德兰奇

Excel中的命名范围

在Excel中,您可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格的一个矩形部分并调用它'MyTable'.如果在电子表格中存在此类命名范围,那么readtable可以使用其名称读取该范围。

例子:“范围”、“myTable”

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

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

数据类型:char|细绳

要启动的实例的标志Microsoft Excel读取电子表格数据时的Windows,指定为包括的逗号分隔对'使用'和任何一种真正的, 或者假的

你可以设置'使用'参数设置为以下值之一:

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

  • 假的- 读取文件时,导入功能不会启动Microsoft Excel的实例。在此模式下运行时,导入功能功能在文件格式和交互功能的支持下不同,例如公式和宏。金宝app

meftexcel.

真正的

假的

金宝app支持的文件格式

.xls,.xlsx,.xlsm,.xltx,.xltm,.xlsb,.ods

.xls,.xlsx,.xlsm,.xltx,.xltm

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

是的

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

XML文件只

全部折叠

属性后缀,指定为逗号分隔对,由“AttributeSuffix”或者是字符向量或者是字符串标量。此参数指定读取函数附加到对应于输入XML文件中的属性的所有表变量的后缀。如果您未指定“AttributeSuffix”,则读取函数默认附加后缀“属性”到输入XML文件中与属性相对应的所有变量名。

例子:“AttributeSuffix”、“_att”

导入属性,指定为逗号分隔对组成“ImportAttributes”和任何一种1真正的)或0假的).如果您指定假的,则读取函数将不会将输入文件中的XML属性作为输出表中的变量导入。

例子:'进口进一步',false

表行XML节点名,指定为逗号分隔对组成'rownodename'或者是字符向量或者是字符串标量。此参数指定描述输出表行的XML节点名。

例子:'rownodename','xmlnodename'

表行XPath表达式,指定为读取功能用于选择输出表的单个行的字符向量或字符串标量。您必须指定行选择器作为有效的XPath 1.0版本表达式。

例子:'rowselector','/ rootnode / shordnode'

表变量XML节点名,指定为逗号分隔对,由“VariableNodeNames”以及字符向量或字符串阵列的单元格数组。此参数指定读取函数用于识别XML节点以读取为输出表中的变量的XML节点名称。

例子:'variablenodenames',{'xmlnodename1','xmlnodename2'}

例子:“VariableNodeNames”、“XMLNodeName”

例子:'variablenodenames',[“xmlnodename1”,“xmlnodename2”]

表变量XPath表达式,指定为读取函数用于选择表变量的字符向量或字符串数​​组的单元格数组。您必须指定可变选择器作为有效的XPath版本1.0表达式。

例子:'VariablingElectors',{'/ rootnode / shildnode'}

例子:'VariableElectors',“/ rootnode / shardnode”

例子:“VariableSelectors”,(“/ RootNode / ChildNode1”,“/ RootNode / ChildNode2”)

表XML节点名,指定为逗号分隔对,由'tablenodename'或者是字符向量或者是字符串标量。此参数指定读取函数应该读取表的输入结构中的节点。

例子:“TableNodeName”、“节点名的

表数据XPath表达式指定为读取功能用于选择输出表数据的字符向量或字符串标量。您必须指定TableSelector作为有效的XPath 1.0版本表达式。

例子:'tableselector','/ rootnode / shordnode'

可变单元XPath,指定为读取函数用于选择表变量单元的字符向量或字符串标量。您必须指定变量单独选择作为有效的XPath 1.0版本表达式。

例子:'“变量单独选择”,“/ rootnode / shildnode”

变量描述XPath表达式,指定为读取函数用于选择表变量描述的字符向量或字符串标量。必须指定变量描述选择器作为有效的XPath 1.0版本表达式。

例子:“VariableDescriptionsSelector”、“RootNode / ChildNode”

表行名称XPath表达式,指定为读取功能用于选择表行的名称的字符向量或字符串标量。您必须指定行名称选择器作为有效的XPath 1.0版本表达式。

例子:“RowNamesSelector”、“RootNode / ChildNode”

过程在表的给定行中处理重复的XML节点,指定为'addcol'“忽略”, 或者“错误”

重复节点规则

行为

'addcol'

在表格中的变量标题下添加列的列。指定值“RepeatedNodeRule”作为'addcol'不会在表中为重复节点创建单独的变量。

“忽略”

跳过导入重复节点。

“错误” 显示错误消息并中止导入操作。

例子:'repedednoderule','忽略'

一组注册的XML命名空间前缀,指定为逗号分隔对组成注册NameSpaces.和一系列前缀。读取函数在XML文件上评估XPath表达式时使用这些前缀。将命名空间前缀及其关联的URL指定为NX2字符串数组。注册NameSpaces.当您还要评估选择器名称值参数指定的XPath表达式时,可以使用,例如StructSelector对于阅读, 或者可变选择器对于readtableReadTimetable.

默认情况下,读取功能会自动检测命名空间前缀以注册用于XPath评估,但您也可以使用该注册新的命名空间前缀注册NameSpaces.名称值参数。当XML节点具有命名空间URL时,您可能会注册新的命名空间前缀,但XML文件中没有声明的命名空间前缀。

例如,评估名为XML文件的XPath表达式example.xml不包含命名空间前缀。指定'注册NameSpaces'作为[“MyPrefix”,“//www.tatmou.com”]分配前缀MyPrefix.到网址//www.tatmou.com

T=readtable(“example.xml”、“VariableSelector”、“/myprefix:Data”、…“RegisteredNamespaces”、[“myprefix”、”//www.tatmou.com”])

例子:“注册namespaces”,[“myprefix”,“//www.tatmou.com”]

输出参数

全部折叠

输出表,作为表返回。该表可以存储描述、变量单元、变量名和行名等元数据。有关的更多信息,请参见属性部分表格

提示

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

  • XPath选择器名称-值参数支持以下XPath语法,例如金宝app行选择器可变选择器

    • 要选择名称与要选择的节点匹配的每个节点,无论其在文档中的位置如何,请使用“// mynode”句法。您可以使用“// mynode”要省略前面要选择的节点之前的XPath表达式。

    • 要读取文件中一个父节点下的几个同级节点中的一个,可以指定儿童编码[n, 在哪里n对应于要索引的兄弟节点。例如,路径“/ rootnode / shordnode [2]”选择第二个ChildNode元素的父元素是RootNode

    • 要在输入XML文件中读取属于元素节点的属性的值,请指定在属性名之前。例如,“/RootNode/ChildNode[2]/@AttributeName”选择属性attributename.属于第二个ChildNode元素的父元素是RootNode

兼容性的考虑

展开全部

行为在R2020a中改变

介绍了R2013b