一,前言
之前做了个题目,要求把Excel的表格转入MATLAB里面去,我查阅了资料,总结出来以下方法
二,具体的两种方法
1.直接导入数据
如果你觉得写函数比较麻烦,就可以使用matlab自带的导入数据功能
第一步:找到“导入数据的按钮”
第二步:点击这个"导入数据",会弹出路径选择,选择Excel表格的路径就会弹出
第三步:选择你所需要的输出形式,输出的矩阵将自动添加你的工作区间,然后就使用。
(1)表:以你原始的Excel表形式输出,但同一列只能用同一种类型
实例:
注释:黄色就是无法导入,因为同一列既有字符又有数字
导出结果:
(2)列向量:把表每一列输出出来,但是同一列只能用同一种类型
注释:黄色就是无法导入,因为同一列既有字符又有数字
导出结果:
注释:以下三种不再放图做例子,因为下面的‘三 函数’将会讲到,例子将在下面放出
(3)数值矩阵:只能读取数值,所有的字符无法读入
(4)字符串数组:都以string的形式读入,无论是字符还是数字
(5)元胞数组:以cell的形式输出,值得注意的是输出的字符是双引号,这与下面的函数不同
总结:如果你有点没搞清楚,就记住:
你只想要你数据中的数值——用(3)数值矩阵
你只想要数据中的字符——用(4)字符串数组
你只要每一列——用(2)列向量
2、写函数
(1)只读取数值
num = xlsread(filename)
解释:
num就是从‘filename’读取的矩阵,值得注意的是这个矩阵无法读入字符串。正如下图,这种函数无法读入字符‘x’,用‘NULL’替代,所以如果你的数据里面有字符,你想读取,就不要用这个函数。但如果你只要里面的数值就可以用。
注释:下图是MATLAB的help文档的例子
(2)读取字符与数值
[num,txt,raw]=xlsread(filename)
解释:这里第一个‘num’与上面一样的,是数值类矩阵,读不了字符。第二个‘txt’只能读字符,读不了数值。第三个‘raw’是元胞矩阵,里面的字符是用单引号储存的。
注释:下图是MATLAB的help文档的例子
附页:如果你对filename的格式不太懂,可以参考这个。
如果对你有用,就点个赞吧!
如果你有疑惑或者意见,真诚地欢迎你提出!