MATLAB如何每循环一次就建立一个矩阵?

我要将矩阵中除以K余数为0~k-1的行分别保存到K个矩阵里。

搞定了,绝对是最简洁,运行效率最高的算法,就是不知道你能不能看懂。
程序如下:
clear;
clc;
x = rand(10,5); %%%%% 自己定义的矩阵
K = 3;
[a b] = size(x);
for ii = 1:K
var = x(ii:K:a,:);
eval(strcat( 'A',num2str(ii),'=var'));
end

结果:
A1 =
0.2137 0.6103 0.3124 0.6759 0.4301
0.2296 0.9325 0.2905 0.3991 0.7425
0.9621 0.5735 0.6147 0.1051 0.4293
0.0058 0.2235 0.8272 0.3545 0.8497

A2 =
0.3978 0.8011 0.5845 0.2489 0.5722
0.9361 0.7633 0.4026 0.5994 0.7579
0.4380 0.7926 0.9912 0.8214 0.9563

A3 =
0.3337 0.2330 0.8299 0.4758 0.7008
0.6832 0.8264 0.8621 0.8005 0.3891
0.9403 0.3290 0.2037 0.8411 0.5730
温馨提示:内容为网友见解,仅供参考
无其他回答

MATLAB如何每循环一次就建立一个矩阵?
搞定了,绝对是最简洁,运行效率最高的算法,就是不知道你能不能看懂。程序如下:clear;clc;x = rand(10,5); %%%%% 自己定义的矩阵 K = 3;[a b] = size(x);for ii = 1:K var = x(ii:K:a,:);eval(strcat( 'A',num2str(ii),'=var'));end 结果:A1 = 0.2137 0.6...

matlab 中如何将多矩阵存储在一个文件中,由于循环每一次都会生成一个矩...
1、把新的结果存在下标为end+1的位置,数组会自动扩展,例如:A=[]; for i=1:10, A(end+1)=i^2; end 2、预置数组(一般使用zeros),并设置一个计数器标记数组当前的存储位置,然后用该计数器作为下标进行存储。例如:A=zeros(10000,1); idx=0; while idx<10000, idx=idx+1; A(idx)...

matlab怎么循环求二元方程然后组成一个新的矩阵
第一步:将i、j代入二元方程函数中,得到若干组方程(矩阵方程)。即 i=[1:1:10];j=[1:1:10];eq=0.065*2\/22.4-0.935\/(3.14*2*0.11*i*0.08*i)*exp(-z^2\/(2*(0.08*i)^2))*exp(-j^2\/(2*(0.11*i)^2));第二步:用for循环语句和solve函数,得到若干组方程的解,...

在Matlab中如何用for循环产生一个矩阵
>> A(1:2:10)= 0;%令奇位为0 >> A(查找(A == 0))= [];%找到一个位置为0,并使其为空,将被删除

怎样把用MATLAB循环输出的单个矩阵并为一个
首先做一个空矩阵,用来存你输出的内容 如:sum = []然后 举例说明,一下循环为例子:for i = 1:5 for j = 1:5 %假设每次循环生成矩阵为a(i,j)sum = horzcat(sum,a(i,j))%这句就会把每次生成的矩阵a(i,j)横向加入到sum里面 %如果要纵向加,可用vertcat 函数 %也可以用 sum [...

matlab如何获取三个矩阵的分别每一行组成一个新的矩阵?求教
使用d = [a b c]就可以了例如 >> a=[1,2,3;4,5,6;7,8,9]a = 1 2 3 4 5 6 7 8 9>> b=[12,31,21;34,45,11;34,11,67]b = 12 31 21 34 45 11 34 11 67>> c=[12,45,6;79,33,12;56,88,90]c = ...

怎样把matlab中for循环的每次结果同存入一个矩阵的不同列,程序如下...
for t1=rand(1,4)a=2*t1;b=3*t1;x0=a+b y0=a-b z0=a*b k=[x0,y0,z0];k=k'end 是源程序吧可以这样 k=zeros(3,4);for ii=1:4 t1=rand(1,4)a=2*t1;b=3*t1;x0=a+b y0=a-b z0=a*b k(:,ii)=[x0;y0;z0];end ...

matlab 中,用循环控制命令编写程序
可以使用两层for循环控制命令来创建矩阵A,具体实现如下:matlab 初始化矩阵A为全零矩阵 A = zeros(5, 6);使用for循环控制命令,遍历矩阵的每个元素,并计算其值 for i = 1:5 for j = 1:6 A(i, j) = 1 \/ (i + j - 1);end end 输出矩阵A的值 disp(A)运行以上代码,就可以创建...

怎样记录在循环过程中产生的矩阵 matlab
建议利用元胞数组,如每循环一次产生一个data矩阵,那么我可以这样保存在data_save中 n=100;for i=1:n for j=1:n 一些相关程序,产生矩阵data data_save(i,j)={data};...end end 这样第i,j次循环产生的矩阵就存在于data_save(i,j)里了。要调用其中元素,输入data_save{i,j}就可以看到...

用matlab循环命令编写程序创建矩阵a
其实这种矩阵根本不需要循环,两句话就搞定了。当然用循环比较容易理解。[x,y]=meshgrid(1:5,1:6);a=1.\/(x'+y'-1)

相似回答
大家正在搜