matlab找到矩阵某列最大的数
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 22:19:36
![matlab找到矩阵某列最大的数](/uploads/image/f/691581-21-1.jpg?t=matlab%E6%89%BE%E5%88%B0%E7%9F%A9%E9%98%B5%E6%9F%90%E5%88%97%E6%9C%80%E5%A4%A7%E7%9A%84%E6%95%B0)
a=[32918;36433;310533;75839;78516];b=unique(a(:,1));%a的第一列包括的不重复数值c=[];fori=1:length(b)c{i}=a(a(:,1)
这个纯粹是习惯.matlab最初开发的时候,使用的是FORTRAN语言,FORTRAN语言是按列排的,所以后来matlab虽然用c和java重写过,但是为了保持一致,这个方式没有修改过来.
a=[b;zeros(1,b.rowNum)]很久没用matlab,差不多是这样的,你如果知道点的话,改写下
都是一样的,没有本质区别,建议初学的时候打上逗号,这样方便数据纠错
A=[1,2,3;2:4;4:6;3,7,7][m,n]=size(A);a0=[];fori=1:ma=max(A(i,:));B=[a0,a];a0=B;enddisp('最大值为:')M=max
你的行没有输入,应该是P_test=P[,1:60].如果只写1:60,matlab会认为是按位置从第一个元素开始先按列提取,再按行提取.找本matlab的书看吧,一般前几章就会有这部分内容.
额,楼主是想做什么啊?要是想求矩阵的转置,直接有命令就可以了啊,加一个'就能转置了.>>a=[123456789]a'ans=147258369若是只想转换某两行或列,找个中间量储存一下就行了啊,调换
x=[10.012.110.8;18.511.5147.7;13.616.817.5;98.844.568.4;73.977.581.2;147.740.327.9];Max=max(max(x));
同时删去?这好像是做不到的行和列必须分开删a(i,:)=[];a(:,j)=[];
fork=1:length(a)tmp=a{k};b(:,k)=tmp(:,end);endb矩阵就是把a中所有矩阵的最后一列放在一起拼成的矩阵.再问:>>a={}formi=1:18ifmi
clearall;clc;a=[12;34];k=[5,10];k=repmat(k,2,1);b=k.*a;
你不要用max就行了>>A=magic(3);>>[my_max,rows]=max(A(:,3))my_max=7rows=2
比如矩阵A,m*n维的,归一化到[a,b]区间代码如下:amax=max(max(A));%求矩阵中最大数amin=min(min(A));%求矩阵中最小数B=(A-amin)/(amax-amin)
告诉你一个函数的用法,其他的就不难了,自己就能搞定.[X,I]=max(A),X是矩阵A的最大值,I是矩阵A最大值所在的位置.
N(:,1)其中:表示所有行
设A为矩阵,用size(A,i)求矩阵的行数和列数.其中i=1或2.行数用1,列数用2
还是没有听懂.尤其是"我想用一行8个数,逐一除以每一列并取整,再形成一个矩阵;"你还是弄一个5行3列的矩阵的实例然后你说一下,再问:(a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q
比如你的矩阵是A则代码如下:[m,n]=size(A);column=ceil(find(A==max(max(A)))/m)举例:>>A=[1:6;3,56,7,8,4,7]A=1234563567
[C,I]=max(sum(x));%x是你的矩阵,输出变量I就是你要的列数
a=ones(4,5)%建立矩阵b=size(a)%看矩阵有几行几列c=b(1,2)%此为列数