mlfk.net
当前位置:首页 >> mAtlAB中,我要选择一个向量中的部分值赋值到另一... >>

mAtlAB中,我要选择一个向量中的部分值赋值到另一...

b = [a(1:10),a(20:25),a(51:60)];

a = rand(5); b = a; b(2, :) = [];%取消掉a矩阵中的第二行,并将剩余行保存到b矩阵中。

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

这是一个集合的求差运算: 命令是setdiff(x,y) 示例: x=[2 6 8 4 9]; y=[6 8 7 4 3]; setdiff(x,y) ans = 2 9 如果想删除A向量中的前N个元素,则另外定义一个向量B保存删除后的 B(1,:)=A(1,(N+1):length(A))。

b=(1-exp(a/3))./(a/3); 注意中间除号前有一点

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

例如: a=[1 2 3]; b=zeros(3,3); 则:b(1,:)=a; 这就,b的第一行就变成1 2 3了。

最好能把已知向量写出来,看看。把要求说明更详细些。

举个例子: b = rand(1, 110);for i = 1:11 eval(sprintf('x%03d = b(%d:%d);', i, 10*i-9, 10*i));end 没人会去定义这么多"有规律"的变量,为什么不直接用元胞数组来存呢。

【把 unique(a)=3 4 6变成 1 1 3】,规则是什么? 前两个换成1、第三个换成3?还是3、4换成1、6换成3?

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