如何将新列添加到数据框,该数据框取决于另一列的值?

时间:2019-02-25 16:15:46

标签: r

假设我必须遵循以下数据框(称为myData):

X
1
2
3
4

现在我要添加另一列Y(x),如下所示

X   Y
1   max(0, min(a*x+rnorm(1, 183, 10), 4) 
2   max(0, min(a*x+rnorm(1, 183, 10), 4) 
3   max(0, min(a*x+rnorm(1, 183, 10), 4)
4   max(0, min(a*x+rnorm(1, 183, 10), 4)

其中小x是该特定行上x的值,而“ a”只是一个常数。其中4是nrow(myData)。

1 个答案:

答案 0 :(得分:0)

您可以这样做:

# Base R 
dat <- data.frame("X" = 1:4)           
dat$Y = pmax(0, pmin(1*dat$X+rnorm(n=4, 183, 10), n=nrow(dat)))

编辑:根据下面的评论,我对其进行了调整以使用适当的功能,并使其能够动态调整为DF中的行数。