MATLAB中从大矩阵取出小矩阵的函数
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 03:13:07
这样的题目用方程做最好理解设大油桶原有x千克油,那么小油桶原有3/5x千克油.4/5(x-15)=3/5x+154/5x-12=3/5x+154/5x-3/5x=15+121/5x=27x=135答:
[i,j]=find(A==B)返回A中与B相同元素的下标.
A=rand(50,7)randindex=randperm(50);%这个是1到50的随机组合,B=A(randindex(1:30),:)%取上述组合的前30行
好像可以用max()吧?
=a(find(a~=0))
用元胞数组,cell再问:高人能不能给个具体的用法?
input=rand(6)arr=reshape(input,1,size(input,1)*size(input,2));arr(find(arr>0.5))%要求为>0.5
t=0:0.01:10;t0=1:10;y=[0,10:1009];a0=[];fori=1:10a=y(find(i==t));A=[a0,a];a0=A;endA----------------运
A(s-1:s+1,t-1:t+1);3*3的奇数的好办,5*5的把1改成2就行没有专门的命令
比如A为n*m维的矩阵我要抽取m*m的矩阵可以这么写b=A(1:m,:)这就是抽取A的第一到m行形成一个m*m的子矩阵你当然也可以抽取其他行相应的改动1:m即可
tryfunction'randperm',forexample:a=[12345678910];b=a(randperm(length(a)));x=b(1:5);
可以用Take函数把一个矩阵中的一部分提取出来,由于Take的用法太多,所以建议看一下帮助文件mathematica中是用一个二维列表来描述矩阵的,所以对表操作的函数都可以用
input是一个变量名,表示一个三维矩阵,input(:,:,1),表示将input的第三维的序号为1的所有数据幅值给inputr,下同!
输入时不是在英文状态下,你可以看到标点是中文的,换输入状态试试.或者你输入错了,x(:,2))输成了x1(:,2))再问:不是这个问题,你用自己电脑的matlab复制试试。我要画的是X=X1+X2,不
n=100;m=10;c=rand(n,n);iend=10;fori=1:10forj=1:10nmm=c(i*m-m+1:i*m,j*m-m+1:j*m);nm(i,j)=std(reshape(
比如你的矩阵是A则代码如下:[m,n]=size(A);column=ceil(find(A==max(max(A)))/m)举例:>>A=[1:6;3,56,7,8,4,7]A=1234563567
M=[1212245441500546545400000];N=[00];[nrowncol]=size(M);n=0;fori=1:nrow-1ifsum(M(i,:)==N)==2n=n+1;en
E=1000,h=0.01,u=0.3,A=1a(1)=2,a(2)=0,a(3)=0,b(1)=-2,b(2)=2,b(3)=0,c(1)=2,c(2)=1,c(3)=1K={};forr=1:3f
sum(c)