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=zeros(3,3); 则:b(1,:)=a; 这就,b的第一行就变成1 2 3了。

MATLAB二维矩阵赋值和C语言相仿,除了以下几点差别: 下标从1开始而不是0; 索引使用(i,j)而不是[i][j]; 可以一个语句对多个元素(包括整个矩阵)同时赋值。 你说的只能给第一行赋值肯定是谢的代码有错,以下是一个简单的例子: A=zeros(5,4);f...

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列的零矩阵.

问题的思路是首先生成所有访问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中是符号矩阵,符号矩阵的赋值,赋值进去的数字也都会转变成符号量。当然也能够直接赋予符号量。 代码举例: 图中先定义了一个符号矩阵,然后用循环对每一个元素进行了符号赋值。 符号矩阵的相应的矩阵操作与实数矩阵类似...

A=ones(7);B=zeros(7,7) for i=2:5 for j=1:2:5 B(i,j)=A(i,j); end end B 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 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 = 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1...

设原来的矩阵为A,要把A的前n行赋值给B的第m到第m+n-1行,就是: B(m:m+n-1,:) = A(1:n,:); 赋值的话,Matlab的矩阵向量的赋值操作会比for的单个元素赋值快得多。

用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里面很多东西都不需要循环来完成,速度快而且语句简单

一、方法一 1、创建了一个矩阵,操作过程中有矩阵的话那么在工作区就会出现,可以双击工作区的需要更改的矩阵。 2、然后在弹出的表格中选中需要更改的单个矩阵元素,进行更改。 二、方法二 1、也可以通过语句来实现对矩阵单个元素的赋值操作。可...

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