dec04009
发表于 2012-10-27 00:56
有个math center吧,大把大把的例子,搜索下找个类似的 照葫芦画瓢
sobranie_1
发表于 2012-10-29 09:35
太感谢大家的帮助了,,周末忙于打工,现在一看竟然已经有这么多回复{:4_298:}
sobranie_1
发表于 2012-10-29 09:53
同时想请教大家,有没有什么能够循序渐进的MATLAB教材可以自学?网上下载的中文教材真的叫一个坑啊
GSM
发表于 2012-10-29 12:07
sobranie_1 发表于 2012-10-29 09:53 static/image/common/back.gif
同时想请教大家,有没有什么能够循序渐进的MATLAB教材可以自学?网上下载的中文教材真的叫一个坑啊
这是一个matlab指南, 我觉得写的挺好的. http://code.google.com/p/yagtom/
看了你贴的题目, 感觉主要是算法设计, 而不是matlab语言本身的问题. 另外在matlab里要想代码运行快, 得尽量避免使用for循环, 多用matlab自己的函数, 必要时考虑调用C或者其他语言的函数.
Michalsky
发表于 2012-10-29 14:47
除了用fileopen, textscan然后if比较string之外,咱们门外汉想不出别的办法了。我觉得如果要优化只能找学数学或者计算机的研究算法了。
kilin027
发表于 2012-10-29 15:31
建个二维动态数组,去掉文件头,以“|”为分隔符读取字符串文件到这个二维数组里,之后用这个数组检索就好了。
其实最简单的办法就是,不用matlab,用excel导入这个文件,同样以“|”为分隔符,导入之后每个数据都在一个单元格里,用过滤器就可以直接操作了。
sobranie_1
发表于 2012-10-29 19:31
文件读入可以用 textscan这个命令,文件头可以直接用delimiter跳过,问题是:
1.第三列中,有时候为数值,有时候为字符,这该怎么办?第四列有时为字符,有时为空
2.读入数据之后,该怎样对这么多的信号进行检索?
sobranie_1
发表于 2012-10-30 09:10
第一个问题已经解决了
fid = fopen(datei);
daten = textscan(fid,'%f %s %s %s','delimiter','|','headerlines',13);
fclose(fid);
现在就是重新写入新矩阵然后排序的问题