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)
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)