readmatrix
从文件中读取矩阵
描述
A = readmatrix(
通过从文件中读取面向列的数据来创建数组。的文件名
)readmatrix
函数自动检测文件的导入参数。
readmatrix
从文件扩展名确定文件格式:
. txt
,.dat
,或. csv
对于带分隔符的文本文件xls
,.xlsb
,.xlsm
,.xlsx
,.xltm
,.xltx
,或。ods
电子表格文件
对于包含混合数字和文本数据的文件,readmatrix
默认情况下,将数据作为数字数组导入。
例子
从文本文件读取矩阵
显示的内容basic_matrix.txt
然后将数据导入一个矩阵。
类型basic_matrix.txt
6,8,3,1,5, 4,7,3 1,6,7,10 4,2,8,2 2,7,5,9
M = readmatrix(“basic_matrix.txt”)
M =5×46 8 3 1 5 4 7 3 1 6 7 10 4 2 8 2 2 7 5 9
从电子表格文件读取矩阵
从basic_matrix.xls
变成一个矩阵。
M = readmatrix(“basic_matrix.xls”)
M =5×46 8 3 1 5 4 7 3 1 6 7 10 4 2 8 2 2 7 5 9
使用导入选项从指定表和范围读取矩阵
预览电子表格文件中的数据,并从指定的工作表和范围中将数值数据作为矩阵导入。
电子表格文件airlinesmall_subset.xlsx
包含1996年至2008年间多个工作表中的数据。每个工作表都有给定年份的数据。预览文件中的数据airlinesmall_subset.xlsx
.的预览
函数默认显示来自第一个工作表的数据。文件中的前八个变量包含数值数据。
opts = 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}
配置要导入的opts对象中的值10
指定的工作表中的前五个变量的行“2007”
.
选择。表=“2007”;选择。SelectedVariableNames = [1:5];选择。DataRange =“二”;M = readmatrix(“airlinesmall_subset.xlsx”选择)
M =10×52007 12 2 711 2007 133 652 2007 14 4 1116 2007 15 5 825 2007 1 7 7 1411 2007 1 8 1 1935 2007 19 2 2005 2007 111 4 1525 2007 1 12 5 1133 2007 113 6 922
从指定表和范围读取矩阵
预览电子表格文件中的数据,并从指定的工作表和范围导入数值数据(作为矩阵)。
电子表格文件airlinesmall_subset.xlsx
包含1996年至2008年间多个工作表中的数据。每个工作表都有给定年份的数据。预览文件中的数据airlinesmall_subset.xlsx
.的预览
函数默认显示来自第一个工作表的数据。文件中的前八个变量包含数值数据。
opts = 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}
进口10
第一行5
的工作表中的变量“2007”
.
M = readmatrix(“airlinesmall_subset.xlsx”,“表”,“2007”,“范围”,“A2: E11”)
M =10×52007 12 2 711 2007 133 652 2007 14 4 1116 2007 15 5 825 2007 1 7 7 1411 2007 1 8 1 1935 2007 19 2 2005 2007 111 4 1525 2007 1 12 5 1133 2007 113 6 922
输入参数
文件名
- - - - - -要读取的文件名称
特征向量|字符串标量
要读取的文件的名称,指定为字符向量或字符串标量。
根据文件的位置,文件名
可以变成这些形式之一。
位置 |
形式 |
||||||||
---|---|---|---|---|---|---|---|---|---|
MATLAB中的当前文件夹或文件夹®路径 | 中指定文件的名称 例子: |
||||||||
文件夹中的文件 |
如果文件不在当前文件夹或MATLAB路径上的文件夹中,则在中指定完整或相对路径名 例子: 例子: |
||||||||
互联网网址 | 如果文件指定为internet统一资源定位符(URL),则 例子: |
||||||||
远程位置 |
如果文件存储在远程位置,则
根据位置的远近
有关更多信息,请参见使用远程数据. 例子: |
如果
文件名
包含文件扩展名,然后导入函数从扩展名确定文件格式。否则,必须指定“文件类型”
名称-值对参数来指示文件类型。在Windows上®微软系统®Excel®软件,导入功能读取任何Excel电子表格文件格式认可的Excel版本。
如果你的系统没有Excel for Windows或者你正在使用MATLAB在线™时,导入函数与
UseExcel
属性设置为假
,只读.xls, .xlsx, .xlsm, .xltx和.xltm
文件。对于带分隔符的文本文件,导入函数将文件中的空字段转换为任意一个
南
(对于数值变量)或空字符向量(对于文本变量)。文本文件中的所有行必须具有相同数量的分隔符。导入函数忽略文件中不重要的空白。
数据类型:字符
|字符串
选择
- - - - - -文件导入选项
SpreadsheetImportOptions
|DelimitedtextImportOptions
|FixedWidthImportOptions
|XMLImportOptions
文件导入选项,指定为SpreadsheetImportOptions
,DelimitedTextImportOptions
,FixedWidthImportOptions
,或XMLImportOptions
对象创建的detectImportOptions
函数。的选择
对象包含控制数据导入过程的属性。有关每个对象属性的更多信息,请参阅相应的对象页面。
文件类型 | 输出 |
---|---|
电子表格文件 | SpreadsheetImportOptions 对象(仅对表 ,DataRange ,VariableNames 属性) |
文本文件 | DelimitedTextImportOptions 对象 |
固定宽度的文本文件 | FixedWidthImportOptions 对象 |
XML文件 | XMLImportOptions 对象 |
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:“NumHeaderLines”,5
指示表数据前面的前五行是标题行。
WebOptions
- - - - - -HTTP
或HTTPS
请求的选项
weboptions
对象
HTTP
或HTTPS
请求选项,作为weboptions
对象。的weboptions
对象确定在指定时如何导入数据文件名
internet URL是否包含该协议类型“http://”
或“https://”
.
文件类型
- - - - - -文件类型
“文本”
|“表格”
文件类型,指定为逗号分隔的对,由“文件类型”
而且“文本”
或“表格”
.
指定“文件类型”
参数时,名称-值对参数文件名
不包括文件扩展名,或者扩展名不是以下其中之一:
. txt
,.dat
,或. csv
对于带分隔符的文本文件xls
,.xlsb
,.xlsm
,.xlsx
,.xltm
,.xltx
,或。ods
电子表格文件
例子:“文件类型”、“文本”
数据类型:字符
|字符串
NumHeaderLines
- - - - - -标题行数
正整数
文件中的标题行数,由逗号分隔的对组成“NumHeaderLines”
一个正整数。如果未指定,导入函数将自动检测文件中的标题行数。
例子:“NumHeaderLines”7
数据类型:单
|双
ExpectedNumVariables
- - - - - -期望变量数
正整数
变量的预期数目,指定为由逗号分隔的对组成“ExpectedNumVariables”
一个正整数。如果未指定,导入函数将自动检测变量的数量。
数据类型:单
|双
范围
- - - - - -要读取的部分数据
特征向量|字符串标量|数值向量
要从文本或电子表格文件中读取的数据的一部分,指定为由逗号分隔的对组成“范围”
以及这些形式之一的字符向量、字符串标量或数字向量。
指定方法范围 |
描述 |
---|---|
从细胞
|
将数据的起始单元格指定为字符向量或字符串标量或两个元素数值向量。
使用起始单元格,导入函数通过从起始单元格开始导入并在最后一个空行或页脚范围结束来自动检测数据的范围。 例子: |
矩形范围
|
使用其中一种形式的矩形范围指定要读取的确切范围。
导入函数只读取包含在指定范围内的数据。指定范围内的任何空字段都将作为缺失的单元格导入。 |
行范围或列范围
|
通过使用Excel行号标识开始行和结束行来指定范围。 使用指定的行范围,导入函数通过从第一个非空列读取数据的末尾来自动检测列的范围,并为每列创建一个变量。 例子: 或者,通过使用Excel列字母或数字标识开始列和结束列来指定范围。 使用指定的列范围,import函数通过从第一个非空行读取到数据末尾或页脚范围来自动检测行范围。 属性中指定的列数必须匹配 例子: |
起始行号
|
使用正标量行索引指定包含数据的第一行。 使用指定的行索引,导入函数通过从指定的第一行读入到数据的末尾或页脚范围来自动检测数据的范围。 例子: |
Excel的命名范围
|
在Excel中,可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格的一个矩形部分并调用它 例子: |
未指定或为空
|
如果未指定,导入功能将自动检测使用范围。 例子: 注意:使用范围指电子表格中实际包含数据的矩形部分。导入函数通过修改不包含数据的任何开头和结尾行和列来自动检测所使用的范围。仅为空白的文本被认为是数据,并在使用的范围内捕获。 |
数据类型:字符
|字符串
|双
TreatAsMissing
- - - - - -要解释为缺失数据的文本
特征向量|字符串标量|字符向量的单元格数组|字符串数组
要解释为缺失数据的文本,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。
例子:TreatAsMissing,{“NA”,“TBD”}
指示导入函数处理的任何事件NA
或TBD
作为一个缺失的领域。
数据类型:字符
|字符串
|细胞
OutputType
- - - - - -输出数据类型
特征向量|字符串标量
输出数据类型,指定为由逗号分隔的对组成“OutputType”
和包含本表中任何数据类型名称的字符向量或字符串标量。
数据类型 | 输出数据类型 |
---|---|
数字 | “uint8” ,“int8” ,“int16” ,“int32” ,“int64” ,“uint16” ,“uint32” ,“uint64” ,“单一” ,或“双” |
文本 | “字符” 或“字符串” |
其他类型 | “datetime” ,“持续时间” ,或“分类” |
例子:“OutputType”、“uint8”
数据类型:字符
|字符串
分隔符
- - - - - -字段分隔符字符
特征向量|字符串标量|字符向量的单元格数组|字符串数组
分隔文本文件中的字段分隔符字符,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。
例子:“分隔符”,“|”
例子:“分隔符 ',{';','*'}
数据类型:字符
|字符串
|细胞
空格
- - - - - -将字符视为空白
特征向量|字符串标量
要作为空白处理的字符,指定为包含一个或多个字符的字符向量或字符串标量。
例子:“空白”、“_”
例子:“空白”、“? !”
LineEnding
- - - - - -行尾字符
{' \ n ', ' \ r ', ' \ r \ n '}
(默认)|特征向量|字符串标量|字符向量的单元格数组|字符串数组
行尾字符,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。
例子:' LineEnding ', ' \ n '
例子:“LineEnding”、“\ r \ n”
例子:LineEnding,{‘\ b’,‘:’}
数据类型:字符
|字符串
|细胞
CommentStyle
- - - - - -评论风格
特征向量|字符串标量|字符向量的单元格数组|字符串数组
注释的样式,指定为字符向量、字符串标量、字符向量的单元格数组或字符串数组。
例如,要忽略同一行上百分号后面的文本,请指定CommentStyle
作为“%”
.
例子:CommentStyle,{“/ *”}
数据类型:字符
|字符串
|细胞
编码
- - - - - -字符编码方案
“utf - 8”
|“iso - 8859 - 1”
|“windows - 1251”
|“windows - 1252”
|……
与文件关联的字符编码方案,指定为逗号分隔的对,由“编码”
而且“系统”
或标准字符编码方案名称。如果不指定任何编码,则readmatrix
函数在读取文件时使用自动字符集检测来确定编码。
如果您指定“编码”
参数之外的导入选项,则readmatrix
函数使用指定的值“编码”
,覆盖导入选项中定义的编码。
例子:“编码”,“utf - 8”
使用UTF-8作为编码。
例子:“编码”、“系统”
使用系统默认编码。
数据类型:字符
|字符串
DateLocale
- - - - - -阅读日期的地点
特征向量|字符串标量
用于读取日期的区域设置,指定为逗号分隔的对,由“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”
DecimalSeparator
- - - - - -表示十进制分隔符的字符
特征向量|字符串标量
表示数值变量中十进制分隔符的字符,指定为字符向量或字符串标量。方法中指定的字符DecimalSeparator
名称-值对用于区分数字的整数部分和小数部分。
当转换为整数数据类型时,具有小数部分的数字将四舍五入到最接近的整数。
例子:如果名称-值对指定为“DecimalSeparator”、“,”
,然后导入函数导入文本“14159”
作为数字3.14159
.
数据类型:字符
|字符串
ThousandsSeparator
- - - - - -表示千位分组的字符
特征向量|字符串标量
表示数值变量中千位分组的字符,指定为字符向量或字符串标量。数千个分组字符充当视觉分隔符,在每三个位置值处对数字分组。方法中指定的字符ThousandsSeparator
名称-值对来解释导入的数字。
例子:如果名称-值对指定为“ThousandsSeparator”、“,”
,然后导入函数导入文本“1234000”
作为1234000
.
数据类型:字符
|字符串
TrimNonNumeric
- - - - - -删除非数字字符
假
(默认)|真正的
从指定为逻辑变量的数值变量中移除非数值字符真正的
或假
.
例子:如果名称-值对指定为“TrimNonNumeric”,真的
,则导入函数读取“500美元/ -”
作为500
.
数据类型:逻辑
ConsecutiveDelimitersRule
- - - - - -过程来处理连续的分隔符
“分裂”
|“加入”
|“错误”
过程处理分隔文本文件中的连续分隔符,该分隔符指定为本表中的值之一。
连续分隔符规则 | 行为 |
---|---|
“分裂” |
将连续的分隔符拆分为多个字段。 |
“加入” |
将分隔符合并为一个分隔符。 |
“错误” |
返回错误并中止导入操作。 |
数据类型:字符
|字符串
LeadingDelimitersRule
- - - - - -过程来管理前导分隔符
“保持”
|“忽略”
|“错误”
过程来管理分隔文本文件中的前导分隔符,该分隔符作为本表中的值之一指定。
前导分隔符规则 | 行为 |
---|---|
“保持” |
保留分隔符。 |
“忽略” |
忽略分隔符。 |
“错误” |
返回错误并中止导入操作。 |
TrailingDelimitersRule
- - - - - -过程来管理尾随分隔符
“保持”
|“忽略”
|“错误”
过程来管理带分隔符的文本文件中的尾随分隔符,该分隔符作为本表中的值之一指定。
前导分隔符规则 | 行为 |
---|---|
“保持” |
保留分隔符。 |
“忽略” |
忽略分隔符。 |
“错误” |
返回错误并中止导入操作。 |
表
- - - - - -读取的表
”
空字符数组(默认)|特征向量|字符串标量|正标量整数
要从中读取的工作表,指定为空字符数组、字符向量或包含工作表名称的字符串标量,或表示工作表索引的正标量整数。属性指定的值表
属性时,导入函数的行为如表中所述。
规范 | 行为 |
---|---|
” (默认) |
从第一个工作表导入数据。 |
的名字 | 从匹配的工作表名称导入数据,而不管工作表在电子表格文件中的顺序如何。 |
整数 | 从表中导入由整数表示的位置的数据,而不管电子表格文件中的表名如何。 |
数据类型:字符
|字符串
|单
|双
UseExcel
- - - - - -标记启动Microsoft Excel for Windows实例
假
(默认)|真正的
的实例开始的标志Microsoft Excel当读取电子表格数据时,指定为逗号分隔的对,由“UseExcel”
,要么真正的
,或假
.
您可以设置“UseExcel”
参数设置为以下值之一:
真正的
—导入函数在读取文件时启动Microsoft Excel实例。假
—导入函数在读取文件时,不会启动Excel实例。在此模式下操作时,导入函数功能在支持文件格式和交互特性(如公式和宏)方面有所不同。金宝app
UseExcel |
|
|
---|---|---|
金宝app支持的文件格式 |
|
|
金宝app支持交互式特性,如公式和宏 |
是的 |
没有 |
从Windows平台上的电子表格文件读取时,如果要启动的实例Microsoft Excel,然后设置“UseExcel”
参数真正的
.
版本历史
在R2019a中引入
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。