哎matlab中如何把一组数据存入另外一个数组或者矩阵中

比如我用for循环得到一组impixel的值,要把值存入a中,最后我只要输入a,就可以一次性显示我得到的impixel的值....

若是每一次循环得到的impixel都是一列的话,只需每次计算出后写a(:,i)=impixel,
若是一行:a(i,:)=impixel,
若impixel得大小不定,你就在for外预定义一个元组a=cell(N,1);然后每次写a{i}=impixel,最后所有的impixel都存在a里,当然你也可以定义一个结构体,不过我觉得元组更容易操作一些
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-06-18

可以参考下面的例子:

%%模型3
H=5;%屏幕上边缘离地面的高度
h=1.8;%屏幕的高度
D=19;%最后一排离屏幕水平距离
d=4.5;%第一排离屏幕水平距离
c=1.1;%观众的平均坐高
l=0.8;%两排座位间的距离
pi=3.1415926;
fd=pi/180;%幅度换算
for q=0:0.01:20
    fprintf('when q=%f',q);
    n=floor(14.5/(l*cos(q*fd)))+1;
     C=H-(tan(q*fd)*14.5+1.1);%每排观众距屏幕上沿的距离
end%%由计算可知排数19<=n<=20 q<=15.05
%%根据利益最大化,n=20
q=0:0.01:15.01;
for j=1:length(q)
    %fprintf('线倾角q=%f\n',q);
    for i=1:1:20
        x=4.5+14.5*(i-1)/n;
        A(i,j)=(atan(1.8*x/(x^2+(5-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1)*(3.2-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1))))/fd;
        B(i,j)=(atan((5-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1)/x))/fd;
    end
    RA=A/20;
    RB=B/20;
end

最后得到的A和B都是 20x1502的矩阵

第一行表示 i=1

第二行表示 i=2

...

第二十行表示 i=20

第一列表示 p=0

第二列表示 p=0.01

第三列表示 p=0.02

...

第一千五百零二列 p=15.01

哎matlab中如何把一组数据存入另外一个数组或者矩阵中
若是一行:a(i,:)=impixel,若impixel得大小不定,你就在for外预定义一个元组a=cell(N,1);然后每次写a{i}=impixel,最后所有的impixel都存在a里,当然你也可以定义一个结构体,不过我觉得元组更容易操作一些

如何在MATLAB中把一个一个的数值放进数组中
1、首先在命令行窗口中输入a=[1 2 3 4],创建a数组,如下图所示。2、如果想在数组末尾添加新元素,可以输入a=[a 5],按回车键之后可以看到a数组末尾添加了元素5,如下图所示。3、然后在数组末尾添加元素,也可以输入a(end+1)=5,可以达到同样的效果,如下图所示。4、如果想在数组中间添加元素...

MATLAB循环得到的数据如何存入数组或矩阵?
MATLAB循环得到的数据如何存入数组或矩阵:可以把每次计算出的矩阵A保存到一个元胞结构Data中 下次从Data中取矩阵,可以这么写A = Data{i} ;若需把这个元胞结构中的数据导出到excel表格中:如果元胞里的数据是按行连接的,可以用 xlswrite('d.xlsx',Data{:})如果是按列连接的,可以用 xlswrite('...

matlab把一个矩阵的某些元素赋值给另一个矩阵
matlab把一个矩阵的某些元素赋值给另一个矩阵 5 大家来帮我看看下面的这个代码AAnum=zeros(6,Len);fori=1:6forj=1:LenAAnum(i,j)=Properties_center_stand(i,strfind(S0,tline(j)));endend其中SO是已知的一个只有20个字符的矩阵,而... 大家来帮我看看下面的这个代码AAnum=zeros(6,Len); for i=...

在matlab中将特定列的数据存到另一个矩阵中
a=rands(108,72*209); %a是你自己的矩阵 >> b=[];>> for i=1:1:209 b(:,i)=a(:,(i-1)*72+1);end

如何用matlab把一列数导入矩阵中
你要把第3列改为你导入的一列 可以这样 A=ones(3,3);B=[1 2 3]';A(:,2)=B; 这样第二列就变成你想要的了 如果你要把这一列放到最后一列 那就 A=[A,B];%这是矩阵合并的一种方式 列赋值的时候要注意 被导入的矩阵的列数要和你要导入的数据列数相同才行 否则会报错 ...

如何将一个矩阵的元素添加到另一个矩阵中
如何将一个矩阵的元素添加到另一个矩阵中 找一个矩阵元素在另一个矩阵的位置可以使用MATLAB的内置函数ismember(A,B): % 例如A = rand(3);B = rand(5); B(2,3) = A(2,3); % 使A、B之间有相同元素[Lia,Locb] = ismember(A,B);% Lia 为1则改为对应元在B中出现,

在MATLAB中怎么把每一列的数据依次弄到另一个矩阵上去
b=[b c]改为b=[b' c']'另外你没有必要自己编,直接用reshape 比如 b=reshape(a,54,1)

matlab怎么将一个mat文件中的数据导入矩阵
设cell数据为data,用一个循环就可以了:for i=1:length(data), eval(sprintf('a%i=data{%i};',i,i)); end

在Matlab中如何将一个矩阵中满足某条件的数值放入另外一个矩阵中
B = A(A~=0)

相似回答