主要内容

readcell

从文件中读取单元格数组

描述

例子

C = readcell (文件名通过从文件中读取面向列的数据来创建单元格数组。

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

  • . txt.dat,或. csv对于分隔的文本文件

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

例子

C = readcell (文件名选择另外使用导入选项选择

例子

C = readcell (___名称,值使用一个或多个名称-值对参数指定的附加选项从文件创建单元格数组。在指定名称-值对之前,使用前面语法中的任何输入参数。

为数据设置特定的导入选项,可以使用选择对象,也可以指定名称-值对。时指定名称-值对选择,然后readcell只支持这些名值对:

  • 文本文件,DateLocale编码

  • 电子表格文件,UseExcel

例子

全部折叠

显示的内容basic_cell.txt,然后将混合数据导入到单元格数组中。

类型basic_cell.txt
1,2,3你好,世界,南10- 10- 2018 10:27:56,1,
C = readcell (“basic_cell.txt”
C =3×3单元阵列{[1]}{[2]}{[3]}{'你好'}{‘世界’}{(南)}{[10 - 10月- 2018 10:27:56]}{[1]}{1 x1失踪}

导入混合表格数据basic_cell.xls到单元格数组中。

C = readcell (“basic_cell.xls”
C =3×3单元阵列{[1]}{[2]}{[3]}{'你好'}{‘世界’}{1 x1失踪}{[10 - 10月- 2018 10:27:56]}{[1]}{1 x1失踪}

预览电子表格文件中的数据,并将混合数据从指定的工作表和范围导入单元格数组中。

电子表格文件airlinesmall_subset.xlsx包含1996年至2008年间多个工作表中的数据。每个工作表都有给定年份的数据。预览文件中的数据airlinesmall_subset.xlsx.的预览函数默认显示来自第一个工作表的数据。

选择= detectImportOptions (“airlinesmall_subset.xlsx”);预览(“airlinesmall_subset.xlsx”选择)
ans =表8×29年月DayofMonth DayOfWeek DepTime CRSDepTime ArrTime CRSArrTime UniqueCarrier FlightNum TailNum ActualElapsedTime CRSElapsedTime通话时间ArrDelay DepDelay起源桌子距离TaxiIn TaxiOut取消CancellationCode转移CarrierDelay WeatherDelay SDelay SecurityDelay LateAircraftDelay  ____ _____ __________ _________ _______ __________ _______ __________ _____________ _________ __________ _________________ ______________ _______ ________ ________ _______ _______ ________ _____________ _________ ________________ ________ ____________ ____________ __________ _____________ _________________ 18 4 1996 2117 2120 2305 2259 415{“惠普”}{‘N637AW} 108 99 85 6 3{'因为'}{‘PHX} 551 5 18 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 12 5 1252 1245 1511 1500 610{“惠普”}{‘N905AW} 79 75 58 11 7{“宽松”}{‘PHX} 370 3 18 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 16 2 1441 1445 1708 1721 211{“惠普”}{‘N165AW} 87 9674 -13 4{‘汽车’}{‘PHX} 601 4 9 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 1 1 2258 2300 2336 2335 1245{“惠普”}{‘N183AW} 38 35 20 1 2{“摘要”}{‘PHX} 110 6 12 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 4 4 1814 683 1814 1901 1910{‘我们’}{‘N963VJ} 47 56 34 9 0{的DTW}{‘坑’}201 6 7 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 31 3 1822 757 1820 1934 1925{‘我们’}{‘N912VJ} 72 65 52 9 2{‘PHL}{‘坑’}267 6 14 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 18 4 729 1564 730 841 843{‘我们’}{‘N941VJ} 72 73 58 2 1 {DCA的}{PVD的}357 3 11 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} 1996 1 26 5 1704 1705 1829 1839 1538{“西北”}{‘N960N} 85 94 69 -10 1{的DTW}{的RIC} 456 3 13 0 {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char} {0 x0 char}

为变量导入十行数据78,9从已命名的工作表“2007”.Excel®范围“G2: I11”代表列7通过9,从第一行开始的十行2在变量名后面。

M = readcell (“airlinesmall_subset.xlsx”“表”“2007”“范围”“G2: I11”
M =10×3单元阵列{[935]}{[935]}{的WN}{[1041]}{[1040]}{的WN}{[1430]}{[1500]}{的WN}{[940]}{[950]}{的WN}{[1515]}{[1515]}{的WN}{[2042]}{[2035]}{的WN}{[2116]}{[2130]}{的WN}{[1604]}{[1605]}{的WN}{[1258]}{[1230]}{的WN} {[1134]} {[1145]} {' WN '}

输入参数

全部折叠

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

这取决于你文件的位置,文件名可以变成这些形式之一。

位置

形式

当前文件夹或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
Amazon S3™ s3
Windows Azure®Blob存储 wasbwasbs
HDFS™ hdfs

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

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

  • 如果文件名包含文件扩展名,然后导入函数从扩展名确定文件格式。否则,必须指定“文件类型”名称-值对参数来指示文件的类型。

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

  • 如果您的系统没有Windows Excel,或者您正在使用MATLAB在线™,导入函数与UseExcel属性设置为,并只阅读.xls、.xlsx、.xlsm、.xltx和.xltm文件。

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

数据类型:字符|字符串

文件导入选项,指定为SpreadsheetImportOptionsDelimitedTextImportOptionsFixedWidthImportOptions,或XMLImportOptions对象创建的detectImportOptions函数。的选择对象包含控制数据导入过程的属性。有关每个对象属性的更多信息,请参阅相应的对象页面。

类型的文件 输出
电子表格文件 SpreadsheetImportOptions对象(仅用于DataRange,VariableNames属性)
文本文件 DelimitedTextImportOptions对象
宽度固定的文本文件 FixedWidthImportOptions对象
XML文件 XMLImportOptions对象

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:“NumHeaderLines”,5指示表数据前面的前五行是标题行。

所有支持的文件类型

全部折叠

HTTPHTTPS请求选项,指定为weboptions对象。的weboptions对象确定在指定时如何导入数据文件名是否包含该协议类型的internet URL“http://”“https://”

文本和电子表格文件

全部折叠

文件类型,指定为逗号分隔的对,由“文件类型”而且“文本”“表格”

指定“文件类型”参数时的名称-值对参数文件名不包括文件扩展名,或者扩展名不是以下之一:

  • . txt.dat,或. csv对于分隔的文本文件

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

例子:“文件类型”、“文本”

数据类型:字符|字符串

文件中标题行数,指定为逗号分隔的对,由“NumHeaderLines”一个正整数。如果未指定,导入函数将自动检测文件中的标题行数。

例子:“NumHeaderLines”7

数据类型:|

变量的期望数目,指定为逗号分隔的对,由“ExpectedNumVariables”一个正整数。如果未指定,导入函数将自动检测变量的数量。

数据类型:|

要从文本或电子表格文件中读取的部分数据,用逗号分隔的对指定“范围”以及这些形式之一的字符向量、字符串标量或数字向量。

指定的方法范围 描述

从细胞

“细胞”(行坳)

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

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

  • 两元数值向量的形式(行坳)指示起始行和列。

通过使用开始单元格,导入函数从开始单元格开始导入,并在最后一个空行或页脚范围结束,从而自动检测数据的范围。

例子:的A5(5 - 1)

矩形范围

“Corner1: Corner2”[r1 c1 r2 c2]

使用以下形式之一的矩形范围指定要读取的确切范围。

  • “Corner1: Corner2”—使用Corner1而且Corner2哪两个相对的角定义了Excel中要读取的区域A1符号。例如,“C2: N15”

  • [r1 c1 r2 c2]—使用包含开始行、开始列、结束行和结束列的四元素数字向量指定范围。例如,[2 3 15 13]

导入函数只读取包含在指定范围内的数据。在指定范围内的任何空字段都被导入为缺失的单元格。

行范围或列范围

“第一行:Row2”“Column1: Column2”

通过使用Excel行号标识开始行和结束行来指定范围。

使用指定的行范围,导入函数通过从第一个非空列读取到数据末尾自动检测列的范围,并为每一列创建一个变量。

例子:“5:500”

或者,通过使用Excel列字母或数字标识开始列和结束列来指定范围。

使用指定的列范围,import函数通过从第一个非空行读取到数据末尾或页脚范围,自动检测行范围。

字段中指定的列数必须与ExpectedNumVariables财产。

例子:“答:K”

起始行号

n

使用正标量行索引指定包含数据的第一行。

使用指定的行索引,导入函数通过从指定的第一行读取到数据末尾或页脚范围,自动检测数据的范围。

例子:5

Excel的命名范围

“NamedRange”

在Excel中,您可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格的一个矩形部分并调用它“myTable”.如果电子表格中存在这样的命名范围,则导入函数可以使用其名称读取该范围。

例子:“范围”、“myTable”

不明或空

''

如果未指定,导入函数将自动检测使用的范围。

例子:“范围”,“

注意:使用范围引用电子表格中实际包含数据的矩形部分。导入函数通过删除不包含数据的任何前行和后行和列,自动检测所使用的范围。只有空白的文本被认为是数据,并在使用的范围内捕获。

数据类型:字符|字符串|

类型,指定为逗号分隔的对,由“TextType”,要么“字符”“字符串”

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

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

例子:“TextType”、“生物炭”

导入的日期和时间数据的类型,指定为逗号分隔的对,由“DatetimeType”其中一个价值观是:“datetime”“文本”,或“exceldatenum”.的值“exceldatenum”仅适用于电子表格文件,而不适用于文本文件。

价值 导入日期和时间数据的类型
“datetime”

MATLABdatetime数据类型

有关更多信息,请参见datetime

“文本”

如果“DatetimeType”被指定为“文本”中指定的值,则导入的日期和时间数据的类型取决于“TextType”参数:

  • 如果“TextType”被设置为“字符”,那么导入函数将以字符向量的单元格数组形式返回日期。

  • 如果“TextType”被设置为“字符串”,那么导入函数将以字符串数组的形式返回日期。

“exceldatenum”

Excel序列号

流水号是一个单独的数字,等于从给定的参考日期开始的天数。Excel系列日期号使用与MATLAB系列日期号不同的参考日期。有关Excel日期的更多信息,请参见https://support.microsoft.com/kb/214330

数据类型:字符|字符串

文本文件只

全部折叠

分隔文本文件中的字段分隔符字符,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。

例子:“分隔符”,“|”

例子:“分隔符 ',{';','*'}

数据类型:字符|字符串|细胞

作为空白处理的字符,指定为包含一个或多个字符的字符向量或字符串标量。

例子:“空白”、“_”

例子:“空白”、“? !”

行尾字符,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。

例子:' LineEnding ', ' \ n '

例子:“LineEnding”、“\ r \ n”

例子:LineEnding,{‘\ b’,‘:’}

数据类型:字符|字符串|细胞

注释的样式,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。

例如,要忽略同一行上百分号后面的文本,请指定CommentStyle作为“%”

例子:CommentStyle,{“/ *”}

数据类型:字符|字符串|细胞

与文件关联的字符编码方案,指定为逗号分隔的对,由“编码”而且“系统”或者一个标准字符编码方案名称。如果不指定任何编码,则readcell函数在读取文件时使用自动字符集检测来确定编码。

如果指定“编码”参数之外的导入选项,则readcell函数使用指定的值“编码”,覆盖在导入选项中定义的编码。

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

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

数据类型:字符|字符串

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

价值 导入的持续时间数据类型
“持续时间”

MATLAB持续时间数据类型

有关更多信息,请参见持续时间

“文本”

如果“DurationType”被指定为“文本”,则导入的持续时间数据的类型取决于“TextType”参数:

  • 如果“TextType”被设置为“字符”,那么导入函数将以字符向量的单元格数组形式返回持续时间数据。

  • 如果“TextType”被设置为“字符串”,那么导入函数将以字符串数组的形式返回持续时间数据。

数据类型:字符|字符串

用于读取日期的地区,指定为逗号分隔的对,由“DateLocale”和该形式的字符向量或字符串标量xx_YY,地点:

  • YY是一个大写的ISO 3166-1 alpha-2代码,表示一个国家。

  • xx是ISO 639-1两个字母的小写代码,表示一种语言。

此表列出了区域设置的一些通用值。

语言环境 语言 国家
“de_DE” 德国 德国
“en_GB” 英语 联合王国
“en_US” 英语 美国
“es_ES” 西班牙语 西班牙
“fr_FR” 法国 法国
“it_IT” 意大利 意大利
“ja_JP” 日本 日本
“ko_KR” 朝鲜文 韩国
“设置nl_NL” 荷兰 荷兰
“zh_CN” 中文(简体) 中国

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

如果指定DateLocale除…外选择的导入选项,则导入函数将使用指定的值DateLocale参数,覆盖在导入选项中定义的语言环境。

例子:“DateLocale”、“ja_JP”

过程处理分隔文本文件中的连续分隔符,指定为此表中的值之一。

连续分隔符规则 行为
“分裂” 将连续的分隔符拆分为多个字段。
“加入” 将分隔符连接为一个分隔符。
“错误” 返回一个错误并中止导入操作。

数据类型:字符|字符串

过程来管理分隔文本文件中的前导分隔符,指定为此表中的值之一。

领先的分隔符规则 行为
“保持” 分隔符。
“忽略” 忽略了分隔符。
“错误” 返回一个错误并中止导入操作。

过程来管理分隔文本文件中的尾随分隔符,指定为此表中的值之一。

领先的分隔符规则 行为
“保持” 分隔符。
“忽略” 忽略了分隔符。
“错误” 返回一个错误并中止导入操作。
电子表格文件只

全部折叠

要从中读取的工作表,指定为空字符数组、包含工作表名称的字符向量或字符串标量,或指示工作表索引的正标量整数。对象指定的值属性时,导入函数的行为如表中所述。

规范 行为
''(默认) 从第一个工作表导入数据。
的名字 从匹配的表名导入数据,无论表在电子表格文件中的顺序如何。
整数 不管电子表格文件中的表名是什么,从表中以整数表示的位置导入数据。

数据类型:字符|字符串||

的实例启动Microsoft Excel当读取电子表格数据时,指定为逗号分隔的对,由“UseExcel”,要么真正的,或

您可以设置“UseExcel”参数设置为以下值之一:

  • 真正的—导入功能在读取文件时启动Excel实例。

  • —导入功能在读取文件时不启动Excel实例。在此模式下操作时,导入函数功能在支持文件格式和交互特性(如公式和宏)方面有所不同。

UseExcel

真正的

支持文件格式

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

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

支持交互特性,如公式和宏

是的

没有

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

版本历史

介绍了R2019a

Baidu
map