matlab如何读取10000行3列的txt文件,将第三列数据放到100*100矩阵中,并可以用(i,j)对应

Rt,谢谢啦!

把txt文件放到工作目录里,load即可,然后会多出一个变量,比如说是A,然后B=reshape(A[:,3],100,100);追问

load('D:\comsol\nanoset\fraction.txt');
A=load('D:\comsol\nanoset\fraction.txt');
B=reshape(A[:,3],100,100);
是这样吗?好像不太对

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-19
这3列全都是纯数据吗?最好贴两三行出来看看格式,才知怎么读取。追问

0.000e+000 5.000e-010 1
0.000e+000 1.500e-009 1
0.000e+000 2.500e-009 1
就是这样,我需要把第三列的0或1提取出来,放到
for i=1:100
for j=1:100
这样的(i,j)的100*100的矩阵中,并能接下来继续这个矩阵

追答

纯数据就简单了
A = dlmread('___.txt');
length(A) % 输出数据的行数,如果不是10000说明数据有误
B = reshape(A(:,3), 100, 100);
B就是结果了。

追问

嗯,谢谢你啦,这样弄完后,在workspace里面有100*100的矩阵了,但是怎么调用呢?
B0=B(1:100,1:00);
for i=1:100;
for j=1:100;
if B0(i,j)=1
sigma(i,j)=2770;
else
sigma(i,j)=8;……
这样运行不了,十分感谢你!

追答if B0(i,j)=1

很典型的错误,应该是==

本回答被提问者采纳