gmth.net
当前位置:首页 >> MATLAB 矩阵赋值! >>

MATLAB 矩阵赋值!

在matlab中,可通过如下方式给矩阵赋值: a = zeros(3,4); % 初始化一个3*4的矩阵>>a = 0 0 0 00 0 0 00 0 0 0a(1,2) = 5; % 将矩阵a的第1行第2列个元素赋值为5>>a = 0 5 0 00 0 0 00 0 0 0a(2) = 6; % 将矩阵a的第2个元素(按列开始计算)赋值...

>> A=[1 2 3]; >> B=[1 2 3;4 5 6;7 8 9]; >> B(:,2)=A';%使矩阵B的第二列=A

举例说吧。建立一个5×5的0矩阵。然后把第一列赋值1. >> B=zeros(5,5) B = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >> B(:,1) = 1 B = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 以此类推。

问题的思路是首先生成所有访问data时的二元下标组合,然后用sub2ind转换成一元索引,然后就可以向量化赋值。 [M, N] = size(b); sub_i = repmat((1:N), [M 1]); % 构造下标i的序列 ind = sub2ind(size(data), b(:), sub_i(:)); c = data(ind);

带参数的矩阵,在matlab中是符号矩阵,符号矩阵的赋值,赋值进去的数字也都会转变成符号量。当然也能够直接赋予符号量。 代码举例: 图中先定义了一个符号矩阵,然后用循环对每一个元素进行了符号赋值。 符号矩阵的相应的矩阵操作与实数矩阵类似...

subs(r,t,1) 如果t没有预先定义过的话加个引号 subs(r,'t',1)

A=cell(1,40); for i=1:40 A{i}=zeros(400,10); A{i}(i,:)=1; end B=cell2mat(A); B是你想要的矩阵。 顺便说一下,你要的那种形式只在第一行到第40行,第41行倒第400行是360行*400列的零矩阵.

syms x11 x22 x33; a=[x11,x22,x33]

用sub2ind >> a=zeros(5); i = [2;3;4]; j = [1;4;2]; >> a(sub2ind(size(a), i, j))=1 a = 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 hokvens: 这个正是matlab的精髓,matlab里面很多东西都不需要循环来完成,速度快而且语句简单

方法一: A(1,1)=1; A(1,2)=2; A(1,3)=3; A(2,1)=4; 其余同理。 方法二: 先定义temp=[1 2 3 4 5 6 7 8 9] 只要元素个数相同,可以相互赋值。矩阵的变维。 a=temp;

网站首页 | 网站地图
All rights reserved Powered by www.gmth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com