finding the mean and max
显示 更早的评论
suppose i have a matrix where the first column is x(:,1)=[ 1 1 1 2 2 1 1 3 1 ] and second column is x(:,2)=[ 2 3 2 4 6 9 7 8 9];
i want the output as y(:,1)=[ 1 2 3 ], y(:,2)=[ 9 6 8] and y(:,3)=[5.33 5 8];
the first column should be the values from first column of x reduced to a single value and in ascending order, the second column should be the highest number from the second column of x for a particular value in first input column. for ex. for all the 1's in first column of x should return one max value from the second column of x. the third column should contain the means of the second column of x for a particular value in first column of x. same example as given.
采纳的回答
更多回答(1 个)
Andrei Bobrov
2018-11-21
编辑:Andrei Bobrov
2018-11-21
1 个投票
EDITED
>> XXX =[ 1 1 1 2 2 1 1 3 1 ; 2 3 2 4 6 9 7 8 9]'
XXX =
1 2
1 3
1 2
2 4
2 6
1 9
1 7
3 8
1 9
>> T = varfun(@(x)[max(x),mean(x)],array2table(XXX),'G',1);
out = T{:,[1,3]}
out =
1 9 5.3333
2 6 5
3 8 8
>>
2 个评论
johnson saldanha
2018-11-21
Andrei Bobrov
2018-11-21
编辑:Andrei Bobrov
2018-11-21
I edited my answer, and you read the help about the MATLAB functions.
类别
在 帮助中心 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!