matlab怎样按列读取txt中的数据到数组啊

比如txt如下271362453想把1,2,3分别保存到数组的(2,7)(3,6)(4,5)位置上去... 比如txt如下

2 7 1
3 6 2
4 5 3
想把1,2,3分别保存到数组的(2,7)(3,6)(4,5)位置上去
展开
 我来答
天云小店
2015-06-13 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:781万
展开全部
在matlab中,可以用load函数将txt文件中的数据读入到一个数组当中。

如果txt文件在当前工作路径,那么直接可以用下面的命令进行读取:
load data.txt %将data文件中数据读取到工作空间中
a = data; % 将读取到工作空间中的数据保存到数组a中
或者用下面的命令
a = load('data.txt'); % 将文件名为data.txt的数据读取到数组a中

如果txt文件不在当前工作路径,那么可以将其完整路径输入进行读取:
load E:\dataFile\data.txt %将data文件中数据读取到工作空间中
a = data; % 将读取到工作空间中的数据保存到数组a中
或者用下面的命令
a = load('E:\dataFile\data.txt'); % 将文件名为data.txt的数据读取到数组a中
韩四叔
2012-12-31 · TA获得超过786个赞
知道小有建树答主
回答量:260
采纳率:50%
帮助的人:82.7万
展开全部
如果三组数,可以这样读
[c1,c2,c3]=textread('数据.txt','%n%n%n,'headerlines',3);
具体见textread,字符还是数字都能定义读取
追问
问题是这样的。。。
首先有一个三阶的零矩阵a
还有txt如下
1 1 3
2 2 2
3 3 1
每行数据的前两个数只是坐标值,最后一个数据才是需要的数据
比如第一行1 1 3,就是要把3保存到三阶矩阵的第一行第一列。
第二行2 2 2,就是要把2保存到三阶矩阵的第二行第二列
第三行3 3 1,就是要把1保存到三阶矩阵的第三行第三列
最终得到a的结果是
3 0 0
0 2 0
0 0 1
求教了。。。。。
追答
a=load('1.txt');
a=a(:,3);
a=diag(a);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangyouxinboy
2012-12-31
知道答主
回答量:18
采纳率:100%
帮助的人:12.8万
展开全部
data=dlmread('shuju.txt');
a=zeros(size(data));
for i=1:size(data,1)
a(data(i,1),data(i,2))=data(i,3);
end
clear data;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式