【问题标题】:Make the sum of all the subtractions of a vector elements in R将R中向量元素的所有减法相加
【发布时间】:2013-07-20 15:25:06
【问题描述】:

您好,我是 R 的新手,我找不到完全按照我的意愿去做的方法。我有一个 x 数字的向量,我想做的是按递增顺序对其进行排序,然后开始像这样进行减法(假设 vecto 有 100 个数字):

[x(100)-x(99)]+[x(99)-x(98)]+[x(98)-x(97)]+[x(97)-x(96)]+...[x(2)-x(1)]

然后将所有的总和除以向量具有的元素数,在本例中为 100。 目前我唯一能做的就是使用以下命令对向量进行排序:

 sort(nameOfTheVector)

对不起,我的英语不好。

【问题讨论】:

  • x(100)x的最小元素还是最大元素?
  • @mnel 我只是不确定他们是否打算用于x(100) < x(99) 或反之亦然,这会改变每个差异的迹象。我们有同样的想法,唯一的区别是你排序的顺序。

标签: r vector sum


【解决方案1】:

diff 返回适当的滞后和迭代差异。在您的情况下,您需要默认的单一滞后。 sum 将返回传递给它的任何参数的总和,所以....

sum(diff(sort(nameOfTheVector))) / length(nameOfTheVector)

【讨论】:

  • 哇!快速回答,完美运行,正是我需要的,非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-22
  • 1970-01-01
  • 1970-01-01
  • 2014-10-19
相关资源
最近更新 更多