关于Matlab读入数据问题
各位大侠:(1)原始数据存在data.txt,很大!20M!
(2)每行为一个样本,
例如:第一行为 38 1 50 2 60 3 95 2 200 1 500 2 ...
其格式为:属性 属性值 属性 属性值 属性 属性值...
(3)各行出现的属性个数不同。
现需将每行化为同维的,
即先将其化为 0 0 ... 1 0 0 0... 2 0 0 ... 3 0 0... 2 0 0 ... 1 0 0 ... 2
不知是否描述清楚了?
请帮忙解决!万分感激!!!
[ 本帖最后由 eight 于 2007-12-6 18:32 编辑 ] 原帖由 hehaibin 于 2007-12-6 16:10 发表 http://www.chinavib.com/forum/images/common/back.gif
各位大侠:
(1)原始数据存在data.txt,很大!20M!
(2)每行为一个样本,
例如:第一行为 38 1 50 2 60 3 95 2 200 1 500 2 ...
其格式为:属性 属性值 属性 属性值 属性 属性值...
(3)各行出现的属 ...
我是出学但知道一点,有个loaddata在开始菜单下,可以先加载进去再对矩阵进行处理啊,这是比较简单的,也可以用load命令,但格式需要查help文件了,
希望可以帮助…… 原帖由 hehaibin 于 2007-12-6 16:10 发表 http://www.chinavib.com/forum/images/common/back.gif
各位大侠:
(1)原始数据存在data.txt,很大!20M!
(2)每行为一个样本,
例如:第一行为 38 1 50 2 60 3 95 2 200 1 500 2 ...
其格式为:属性 属性值 属性 属性值 属性 属性值...
(3)各行出现的属 ...
请先看看相关帖子,特别是精华区的帖子 主要是文件太大,无法读入内存。 如果文件都是由数值而不是字符组成,可以用load命令导入
data=load('data.txt');
要保证data.txt在你matlab的工作目录下
也可以用fid=fopen('data.txt')打开文件,然后用textscan命令读取数据,具体看matlab的help吧,比较详细了。
你的文件不大,我试过的,20M可以读入的 原帖由 hehaibin 于 2007-12-7 10:58 发表 http://www.chinavib.com/forum/images/common/back.gif
主要是文件太大,无法读入内存。
分批读取
去掉属性编号,只留属性值,未出现的属性令其值为0,
即将第一行化为
0 0 ... 1 ... 2 ... 3 ... 2 ... 1 ... 2 ...
(1 2 ... 38 ... 50 ... 60 ... 95 ... 200 ... 500 ...)
其他行类似处理,各行出现的属性个数不同。
请帮忙指点!!!
[ 本帖最后由 hehaibin 于 2007-12-19 20:10 编辑 ] 看不明白
去掉属性编号,只读入奇数项? 有个loaddata的图标,点击后会有一些提示,这样可以读进去! 参考http://forum.vibunion.com/forum/viewthread.php?tid=8937
读入一行处理一行,多大的文件都能处理
页:
[1]