QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 27599|回复: 82
打印 上一主题 下一主题

Matlab数据导入之我见

[复制链接]
字体大小: 正常 放大

19

主题

9

听众

271

积分

升级  85.5%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2009-8-20 12:58 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
Matlab功能真的很强大,数据接口做得也相当完美,和大家分享下自己文件读取方面的一些收获和体会吧。Matlab文件导入的函数很多,可以用doc命令打开帮助文档,在search栏里面输入?read查找,不过这样比较盲目,或者用help ?read,可以看到系统自带的文件特定格式的文件读取命令,常用的方法有& r% X8 J( @- e& K: g5 e- w
xlsread,读取excel文件。
9 ~  I! R2 n, \textread,读取txt文件等等,还有很多,有兴趣的咱们可以一起去摸索。% t- _$ Q- \; {( m# j0 J+ \
另外,R2007a左右的版本,系统可以自己生成文件读取函数,只要在默认Default窗口下查看当前目录下的Current Directory,好像是Directory,记得不大清啦,这台机子上没装Matlab,就是Workspace旁边的那个框选菜单,然后双击需要读取的文件(excel格式或txt格式都可以),会弹出一个对话框,在右下角位置上有一个Great m file 选框,选中即可,就会自动生成函数啦。' y1 z' f: q1 O& l3 H3 U" q
另外,给大家分享下我自己用过的几个命令
: t) s" |  e$ N6 Y7 o9 k假设要读取的excel文件名为exmp.xls
* k* _+ Y, C9 o: z. L+ Z' Q第一步,将文件放到当前文件夹里面;6 B  O  ~: I% B& D
第二步,写入命令4 R8 p0 g$ d' |( z/ j
有很多种格式 num=xlsread('exmp.xls');* j1 B6 U% R  {" r" T
num即读取的数值文件,好像以前的有些版本只能做到这一步,我用的是R2007a版本/ D$ t7 S9 t6 n' C2 V, q7 p2 ^
他还支持其他命令,比如:[num,txt]=xlsread('exmp.xls','sheet1')
# f3 O+ w4 y4 j2 P& ]6 Dnum返回工作表sheet1中数值格式的内容,不是数值格式的系统默认为NaN;& \/ E# g9 |0 M/ }5 e
txt返回sheet1中字符串格式的内容,以元胞的形式存储到变量txt中,同理,不是字符串格式的默认为NaN;/ y4 F9 x( v! K
这样大家就很方便的进行数据写入啦。其中sheet1可以任意改为exmp内的工作表,比如'sheet2'或者你自己重命名的工作表。  f' }; [0 y8 d" `8 B5 J3 w4 Q" _
还有更高的( Q; w- n0 n* m% H: r5 Y9 N! {/ b
[num,txt]=xlsread('exmp.xls','sheet1','A1:F81')* `9 n- j& m% S
num返回A1到F81矩形框中数值格式的内容
1 G: }. B. Q+ k. z! Ftxt返回A1到F81矩形框中字符串格式的内容" F7 Y8 j8 |7 J! {' B
当然矩形框大家可以根据实际需要任意定义6 o* l3 v0 p- S( |  `3 A6 Q
这样是不是很方便呀
6 |9 N3 @$ y! n7 L2 V: `) O7 ^& H还有5 C7 v$ j( R  g" ]
[num,txt,all]=xlsread('exmp.xls','sheet1'): K0 ^! a6 c5 R( e, [
all返回的是工作表sheet1中的全部内容,不过全部以元胞形式存储在all中
; [9 |5 _+ ^; P/ D* P0 i真想全部掌握excel文件读取功能可以用doc xlsread 命令查看帮助文档,里面讲得很详细
' I! L, K/ L; T6 M1 ~/ N以前还挺喜欢用这几个命令的
. K4 U6 \4 s+ ^# q4 g后来发现他有个很大的缺点,就是速度太慢,读取大的数据量时需要好几秒钟
! e+ n7 U* N6 O* J" m2 W, Y' x建议大家将数据导入txt中,用命令textread('exmp.txt'),速度会更快
  u& R; {3 t/ W$ k- \或者用fopen函数,这个可能就会麻烦一点0 ^/ s5 H7 e* B8 ~) L; ^
只是自己的一些拙见,相互学习嘛
; X& _: g& p6 s8 {错误的地方请大家指正,抛砖引玉就达到效果啦
zan
已有 2 人评分体力 金币 收起 理由
苍松绿竹 + 1
大笨象 + 2 我很赞同

总评分: 体力 + 1  金币 + 2   查看全部评分

转播转播0 分享淘帖0 分享分享0 收藏收藏1 支持支持2 反对反对0 微信微信
jyh123 实名认证       

7

主题

4

听众

93

积分

升级  92.63%

  • TA的每日心情
    开心
    2012-3-9 22:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    回复

    使用道具 举报

    16

    主题

    21

    听众

    3372

    积分

    升级  45.73%

  • TA的每日心情
    开心
    2013-10-25 15:56
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    自我介绍
    活泼,爱交友

    发帖功臣 新人进步奖

    群组数学建模

    群组数学趣味、游戏、IQ等

    群组我行我数

    群组Mathematica研究小组

    群组LINGO

    回复

    使用道具 举报

    w13king 实名认证       

    8

    主题

    4

    听众

    295

    积分

    升级  97.5%

    该用户从未签到

    新人进步奖

    群组数模天空

    回复

    使用道具 举报

    2

    主题

    4

    听众

    167

    积分

    升级  33.5%

    该用户从未签到

    群组lingo程蚪涣?> <input type=

    回复

    使用道具 举报

    5

    主题

    4

    听众

    18

    积分

    升级  13.68%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    0

    主题

    3

    听众

    27

    积分

    升级  23.16%

    该用户从未签到

    新人进步奖

    我正要找呢,呵呵,谢谢啦~~# o% e/ y4 ?( c) R9 Z% a3 {# b
    顺便请教一下,如何把word里的数据导入excel呢
    回复

    使用道具 举报

    ykl126 实名认证       

    23

    主题

    4

    听众

    1101

    积分

    升级  10.1%

    该用户从未签到

    发帖功臣 新人进步奖

    回复

    使用道具 举报

    zsuzengli 实名认证       

    0

    主题

    4

    听众

    761

    积分

  • TA的每日心情
    开心
    2018-2-12 14:32
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    回复

    使用道具 举报

    0

    主题

    4

    听众

    40

    积分

    升级  36.84%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2024-5-31 05:50 , Processed in 0.650173 second(s), 106 queries .

    回顶部