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

2 ビュー (過去 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 ExchangeOperating on Diagonal Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by