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 Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by