Averaging data between two integer and corresponding column of a matrix

1 view (last 30 days)
I have this type of matrix
A = [1 2 3 4 5 6; 1.234 1.11 1.3 2.31 2.3 2.4]'
I want to average all data between two integer of 2nd column and corresponding data of firs clumn to form new matrix
  1 Comment
Sudhir Rai
Sudhir Rai on 23 Mar 2023
For A = [1 2 3 4 5 6; 1.234 1.11 1.3 2.31 2.3 2.4]'
I need output B= [2 7.5; 1.21 2.33]'
i.e average (1.234 1.11 1.3) and corresponding 1st column average = avg(1 2 3)
(1.234 1.11 1.3) is between 1 & 2
similarly (2.31 2.3 2.4) is between 2&3

Sign in to comment.

Answers (1)

KSSV
KSSV on 21 Mar 2023
A = [1 2 3 4 5 6; 1.234 1.11 1.3 2.31 2.3 2.4]' ;
idx = fix(A(:,2))==2 ;
mean(A(idx,1))
ans = 5
  1 Comment
Sudhir Rai
Sudhir Rai on 22 Mar 2023
Edited: Sudhir Rai on 23 Mar 2023
This not the out put I want
For A = [1 2 3 4 5 6; 1.234 1.11 1.3 2.31 2.3 2.4]'
I need output B= [2 7.5; 1.21 2.33]'
i.e average (1.234 1.11 1.3) and corresponding 1st column average = avg(1 2 3)
(1.234 1.11 1.3) is between 1 & 2
similarly (2.31 2.3 2.4) is between 2&3

Sign in to comment.

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!