- 在线时间
- 0 小时
- 最后登录
- 2009-10-10
- 注册时间
- 2009-7-18
- 听众数
- 9
- 收听数
- 0
- 能力
- 0 分
- 体力
- 104 点
- 威望
- 11 点
- 阅读权限
- 30
- 积分
- 271
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 235
- 主题
- 19
- 精华
- 1
- 分享
- 0
- 好友
- 0
升级 ![](source/plugin/plbeautify/images/expl.gif) ![](source/plugin/plbeautify/images/expc.gif) 85.5% 该用户从未签到
![](plugin.php?id=eis_qrcode2:make_qrcode&tid=31019) |
Matlab功能真的很强大,数据接口做得也相当完美,和大家分享下自己文件读取方面的一些收获和体会吧。Matlab文件导入的函数很多,可以用doc命令打开帮助文档,在search栏里面输入?read查找,不过这样比较盲目,或者用help ?read,可以看到系统自带的文件特定格式的文件读取命令,常用的方法有: }' F" u2 i8 a0 M) r3 O
xlsread,读取excel文件。3 j: e! D1 A& E/ @, F W1 w; Y
textread,读取txt文件等等,还有很多,有兴趣的咱们可以一起去摸索。8 d' g8 X) G: T: h' `+ M. j( t
另外,R2007a左右的版本,系统可以自己生成文件读取函数,只要在默认Default窗口下查看当前目录下的Current Directory,好像是Directory,记得不大清啦,这台机子上没装Matlab,就是Workspace旁边的那个框选菜单,然后双击需要读取的文件(excel格式或txt格式都可以),会弹出一个对话框,在右下角位置上有一个Great m file 选框,选中即可,就会自动生成函数啦。
% V( I2 h2 p1 D( v) Z另外,给大家分享下我自己用过的几个命令 d- S; X9 J3 }7 K V& I/ j, A1 c
假设要读取的excel文件名为exmp.xls
4 t; z$ d/ j8 P% h8 B6 R第一步,将文件放到当前文件夹里面;
4 J7 O' L1 q7 T0 a$ q第二步,写入命令
8 k1 z2 T( C# N S有很多种格式 num=xlsread('exmp.xls');: D0 y3 C2 @# ?8 Y8 v
num即读取的数值文件,好像以前的有些版本只能做到这一步,我用的是R2007a版本' G$ P# ]. d* Y( q$ u- l9 u
他还支持其他命令,比如:[num,txt]=xlsread('exmp.xls','sheet1')8 G C5 X3 }9 O% k% M
num返回工作表sheet1中数值格式的内容,不是数值格式的系统默认为NaN;
" ?6 H- |9 i, v6 k' Jtxt返回sheet1中字符串格式的内容,以元胞的形式存储到变量txt中,同理,不是字符串格式的默认为NaN;
/ Z6 h1 M; R$ k8 s7 D7 N这样大家就很方便的进行数据写入啦。其中sheet1可以任意改为exmp内的工作表,比如'sheet2'或者你自己重命名的工作表。
! h0 F$ R8 a$ R9 I7 i还有更高的7 _/ I9 n" s3 Y
[num,txt]=xlsread('exmp.xls','sheet1','A1:F81')
. c2 L F/ ?, j8 Onum返回A1到F81矩形框中数值格式的内容
& l* q' c7 X4 a: gtxt返回A1到F81矩形框中字符串格式的内容0 n+ X6 E& Y5 u. K _
当然矩形框大家可以根据实际需要任意定义# z) | j2 U; {1 x5 Q
这样是不是很方便呀9 f% b% R9 ~. X! J \3 s
还有
& d% M: L! m* D1 `& f8 z9 y' O[num,txt,all]=xlsread('exmp.xls','sheet1')
& H1 @( I9 X r; L9 Nall返回的是工作表sheet1中的全部内容,不过全部以元胞形式存储在all中# Y& `& L1 g1 n
真想全部掌握excel文件读取功能可以用doc xlsread 命令查看帮助文档,里面讲得很详细. E0 I6 L2 G5 }* P1 m
以前还挺喜欢用这几个命令的2 g1 P/ p4 i% P3 b* d
后来发现他有个很大的缺点,就是速度太慢,读取大的数据量时需要好几秒钟
$ k4 q' t$ S' {& o* @建议大家将数据导入txt中,用命令textread('exmp.txt'),速度会更快
7 b! E/ B6 k3 \( [( K9 w7 ^1 p) `5 ^或者用fopen函数,这个可能就会麻烦一点
! z* ]' ~! Q7 F6 B' p' d只是自己的一些拙见,相互学习嘛) e5 o3 P J: a+ S/ `& l m
错误的地方请大家指正,抛砖引玉就达到效果啦 |
zan
-
总评分: 体力 + 1
金币 + 2
查看全部评分
|