zhangchuan 发表于 2006-8-29 15:30

MATLAB 的限制?

请问下大家,是不是在MATLAB中编辑M文件只能小于400K啊?
还有在读取文本文档时,为什么文本文档里的数据不能多列?多列fopen就打不开了。
最近做课题采集到了一个文本文档,280MK大,里面全是数据,头疼,打不开,有谁知道帮忙下,谢谢

realhappy 发表于 2006-8-29 15:44

matlab对文件大小是有限制,采集的数据文件太大。

zhangchuan 发表于 2006-8-29 15:55

我还遇到了读取一个矩阵里的数据,是300列的,可是当读到时,就出现错误告诉你没法读第36行。

linqus 发表于 2006-8-30 01:08

如果是----不能多列
可以自己用C/FORTRAN等语言的文件操作从新编列,再读入MATLAB

不知是否可行。建议试试。

linqus 发表于 2006-8-30 01:09

如果是----不能多列
可以自己用C/FORTRAN等语言的文件操作从新编列,再读入MATLAB

不知是否可行。建议试试。

liule 发表于 2006-8-30 13:53

建议先转成excel格式,再向matlab中读。

心灯 发表于 2006-8-30 14:39

对于大文件,可以使用一些文本编辑器,例如ultraedit打开文件,然后把文件中的部分数据剪切到新文件里,分成几个数据文件,然后再读取处理,应该能够解决问题。

happy 发表于 2006-8-30 14:56

这个用fopen,然后再用fget1行行的读入完全是可以的,我最大处理过500多M的数据

但是需要考虑一个问题,一般情况下这么大的数据是不可能完全同时读入到matlab并保存在矩阵中的(除非你说你的内存NN大,那无话可说);所以一般的处理办法是读入一行处理一行,或者读入若干行(内容允许的范围内,最好少一点),处理入干行,处理完了然后释放空间,在读取下一部分数据进行处理

sscale 发表于 2006-9-1 21:06

可以用textread之内的函数读入大文件啊.
关键是文件太大的话,读得越慢,还是及时处理的比较好。

toes 发表于 2006-9-1 21:18

原帖由 happy 于 2006-8-30 14:56 发表
这个用fopen,然后再用fget1行行的读入完全是可以的,我最大处理过500多M的数据

但是需要考虑一个问题,一般情况下这么大的数据是不可能完全同时读入到matlab并保存在矩阵中的(除非你说你的内存NN大,那无话可 ...

btw,在同样文件大小的情况下,不知道是txt文件存储的数据多,还是mat文件存储的数据多?
mat文件我load过700M的。
页: [1]
查看完整版本: MATLAB 的限制?