i want to get the max value from a column matrix from a specific no of rows ?

1 次查看(过去 30 天)
suppose i have a 269712x1 column matrix ,from the matrix i want to find the max value from each 8760 rows and in this way i have to get 1 value from each 8670 rows which are repeated 30 times. How do i proceed?

采纳的回答

monika shivhare
monika shivhare 2018-6-6
编辑:monika shivhare 2018-6-6
Let A is your given data column matrix, and m is matrix of maximums of each 8760 rows
m=zeros(30,1);
for i=1:30
m(i)=max(max(A((i-1)*8760 +1 : i*8760)));
end
We are using max(max()) because max(X) gives row of maximum value of each column. Alternatively, you can use
m=zeros(30,1);
A=A';
for i=1:30
m(i)=max(A((i-1)*8760 +1 : i*8760));
end

更多回答(1 个)

KSSV
KSSV 2018-6-6
A = rand( 269712,1) ; % some random data for demo
% discard extra elements
idx = round(length(A)/8670)*8670 ;
A = A(1:idx) ;
B = reshape(A,8670,[]) ;
iwant = max(B)

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by