matlab矩阵中取出一段
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/06 02:37:55
下面给你弄一个小的矩阵分块的示范.你的256*256类似地改一下:N=16;%16*16A=magic(N)M=4;%分解成4*4B=mat2cell(A,ones(N/M,1)*M,ones(N/M
[i,j]=find(A==B)返回A中与B相同元素的下标.
=a(:)得到的b是一个列向量.b=a得到的是一个行向量.
matlab默认的矩阵转置是共轭转置,是对复数进行操作的.求共轭转置矩阵的指令为A'非共轭转置矩阵的指令为A.',相当于conj(A')由于一般输入的矩阵都是实矩阵,所以A'后就是conj(A'),也
A=zeros(1,24);B=ones(1,25);A=B(2:25)如此即可,冒号的意思是从第2个元素到第25个.
设源矩阵叫MAT:A=floor(MAT/1e6);B=mod(MAT,1e6);再问:请问如果想保留4-11位该怎么操作呢?再答:级联操作就好了:C=floor(mod(MAT,1e11)/1e3)
好像可以用max()吧?
A=[1:4:12];A(6)=12 ;B=[2436;1532;2779;1235];C=B^3;D1=[B,C];D=D1(2:4,2:7);E=[B;C];F=E(3:5,2:3);G=resh
x(1:10)=1:10%元素值等于下标值i=1:10x(i)=2*i+1%线性关系%其他的发挥你的想象力
=a(find(a~=0))
用元胞数组,cell再问:高人能不能给个具体的用法?
使用save语句如save('matrix.dat',x)如果每次循环的结果都保存到不同的文件中,可以用i=i+1;save(strcat('matrix',num2str(i),'.dat'),x)
input=rand(6)arr=reshape(input,1,size(input,1)*size(input,2));arr(find(arr>0.5))%要求为>0.5
就是A方阵的0.1次方呗.
这么写确实挺奇怪的,感觉就是根据C中的坐标提取A,B中的对应数据.其实,写三个小点的矩阵试一下就就知道了再问:Thankyuo,已经试出来了,谢谢
input是一个变量名,表示一个三维矩阵,input(:,:,1),表示将input的第三维的序号为1的所有数据幅值给inputr,下同!
输入时不是在英文状态下,你可以看到标点是中文的,换输入状态试试.或者你输入错了,x(:,2))输成了x1(:,2))再问:不是这个问题,你用自己电脑的matlab复制试试。我要画的是X=X1+X2,不
比如你的矩阵是A则代码如下:[m,n]=size(A);column=ceil(find(A==max(max(A)))/m)举例:>>A=[1:6;3,56,7,8,4,7]A=1234563567
sum(c)