请教如何将混合数组读入excel
最近碰到个问题,想向高手请教下:我知道,将EXCEL的数据读入MATLAB的函数是xlsread.
假设有这样一个包含列名和数值的excel文件aa.xls:
编号 PV PR1
2 65.77 454596.3
13 173249.9 724434.5
18 33923.2 566149.2
20 101458.2 544245.6
27 184064.2 535381.6
28 161390.9 571988.4
39 169845.9 879912.3用xlsread读入到MATLAB里很简单:
=xlsread('aa.xls') 即可,生成两个矩阵
N=
2 65.77 454596.3
13 173249.9 724434.5
18 33923.2 566149.2
20 101458.2 544245.6
27 184064.2 535381.6
28 161390.9 571988.4
39 169845.9 879912.3
headertxt =
'编号' 'PV' 'PR1'
可是当我想把这两个矩阵重新存成excel文件(包含列名和数据)时却遇到麻烦.
虽然我知道函数xlswrite用于把数据写入excel,可是写入的只能是一个数组,要么是数值数组N,要么是字符数组headertxt:
xlswrite('文件名',N)
xlswrite('文件名',headertxt)
没法将两个数组按照原来的格式同时写入excel,即使我将N和headertxt合并成一个混合数组:
rawdata = {headertxt,N} ,
再用xlswrite读入excel
xlswrite('文件名',rawdata)
也不行,什么也没有写入excel.
请问这是怎么回事,怎么解决这个问题,谢谢!
[ 本帖最后由 eight 于 2008-3-3 15:09 编辑 ] 原帖由 kitty153153 于 2008-3-3 13:30 发表 http://www.chinavib.com/forum/images/common/back.gif
最近碰到个问题,想向高手请教下:
我知道,将EXCEL的数据读入MATLAB的函数是xlsread.
假设有这样一个包含列名和数值的excel文件aa.xls:
编号 PV PR1
2 65.77 454596.3
13 173 ...
不可能不行的,请 doc xlswrite,仔细阅读一下相关例子。另外, rawdata = {headertxt,N}这个写法得到的结果是 rawdata 是一个 cell 数组,问题也许就出在这
[ 本帖最后由 eight 于 2008-3-3 15:21 编辑 ] 原帖由 eight 于 2008-3-3 15:19 发表 http://www.chinavib.com/forum/images/common/back.gif
不可能不行的,请 doc xlswrite,仔细阅读一下相关例子。另外, rawdata = {headertxt,N}这个写法得到的结果是 rawdata 是一个 cell 数组,问题也许就出在这
我看过xlswrite这个函数的相关例子,他举了一个cell数组的例子:
d = {'Time', 'Temp'; 12 98; 13 99; 14 97};
得到的是一个4*2的cell数组,这时用xlswrite读入excel是没问题的.
可是我现在的问题是,我自己也觉得rawdata = {headertxt,N} 这个写法有问题,因为这时我得到的是一个2*1的cell数组,与原来应该有的维数是不同的,所以这时写不进excel。我现在试了很久,不知道怎么把这两个数组合并成正确维数的cell数组,所以想请版主高手们赐教,怎样解决这个问题。 分开写进去就好了
[ 本帖最后由 eight 于 2008-3-10 16:51 编辑 ] 对,分开写是可以实现的。
xlswrite('tep1.xls',headertxt,'sheet1','A1')
xlswrite('tep1.xls',N,'sheet1','A2') 原帖由 faith924 于 2008-3-13 10:59 发表 http://www.chinavib.com/forum/images/common/back.gif
对,分开写是可以实现的。
xlswrite('tep1.xls',headertxt,'sheet1','A1')
xlswrite('tep1.xls',N,'sheet1','A2')
谢谢faith924 ,我试了,可以行得通。:@) 我正在学习
页:
[1]