重复对列或行进行计算+将结果存储在数据框中

时间:2017-09-19 19:46:28

标签: r function loops repeat calculation

我希望对列中的元素进行计算。从第一行开始直到最后一行。在几行上执行此操作。

这里有一些示例日期:

a <- data.frame(1.3, 1.4, 1.5, 1.6, 1.7, 1.8)
Y1 <- runif(100, 5.0, 17.5)
Y2 <- runif(100, 4.0, 27.5)
Y3 <- runif(100, 3.0, 14.5)
Y4 <- runif(100, 2.0, 12.5)
Y5 <- runif(100, 5.0, 17.5)
X <- runif(100, 5.0, 7.5)
df1 <- data.frame(X, Y1, Y2, Y3, Y4, Y5)

1)使用值计算应如下所示:

# For the first column: (x-a[1,1])^2
# For the second column: (x-a[1,2])^2
# For the third column: (x-a[1,3])^2
#And so on...

“x”代表列中的值。结果(每行1个,总共100个)应存储在数据帧中。

2)如果可能,还应计算每列结果的平均值,也可以与步骤1中的代码结合使用。

我运行了这段代码,但没有成功。它不会为每列创建100个值,并且计算也是错误的。

result1 <- as.data.frame(sapply(df1[1:6], function(x) mean((x-a[1:6])^2)))

任何人都可以帮我吗?我试图自己修理它,但我仍然没有看到错误。

0 个答案:

没有答案