登录论坛

查看完整版本 : 查找数组中元素之间平均差的有效方法


poster
2019-12-14, 20:13
希望标题不要混淆。通过示例显示很简单。我有这样的行向量: [1 5 6] 。我想找到每个元素之间的平均差异。在此示例中,差异为4和1,因此平均值为2.5。这是一个小例子。我的行向量可能很大。我是MatLab的新手,所以有没有一种有效的方法来使用MATLAB的高效矩阵/数组操作来很好地做到这一点?

SOF上已经有一个类似的问题,但是这个问题是专门针对MATLAB的!

谢谢 :)

编辑:@gnovice询问,我想要绝对的区别。



回答:

使用差异和均值的简单解决方案

aveDiff = mean(diff(myVector)) %#(1) 例

>> v=[1 5 6] v = 1 5 6 >> mean(diff(v)) ans = 2.5000 这可行,但是@Jonas的答案是正确的解决方案。

编辑

从@ gnovice,@ vivid-colours和@sevenless评论。

差的绝对值的平均值可以通过将abs插入(1)中来找到

aveDiff = mean(abs(diff(myVector))) %#(2)

更多&回答... (https://stackoverflow.com/questions/5160013)