How do I make an average of points ?
2 次查看(过去 30 天)
显示 更早的评论
Hi, say I have an 11*10 matrix and for every point in the 6th row, I want matlab to take an average of the surrounding points and make a new row; ie 1 point has 8 surrounding points then the same for each point in the row, how would this be done please ? Thanks
2 个评论
采纳的回答
jonas
2018-8-22
编辑:jonas
2018-8-22
Based on your simple example:
A=[1 2 3 4 5 6 7 8 9 10;
5 2 4 6 7 4 5 6 7 8;
1 2 3 4 5 6 7 8 9 10]
out = conv2(A,ones(3,3)./9,'same')
This will give you the average of all 9 neighboring values. Second row:
out(2,:)
ans =
Columns 1 through 10
1.4444 2.5556 3.3333 4.5556 5.2222 5.7778 6.3333 7.3333 8.3333 5.8889
0 个评论
更多回答(1 个)
Yuvaraj Venkataswamy
2018-8-22
编辑:Yuvaraj Venkataswamy
2018-8-22
Check this,
if true
X = rand(11,10);
k = 6;
MA = movmean(X,[(k-1) 0]);
Y = MA(k:k:end,:);
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!