有条件地替换R中的值

有条件地替换R中的值,r,R,我想有条件地替换R中每列的值。我的数据如下图所示 在本例中,我要检查值是否为>UCL,然后是否要替换为UCL值,以及值是否为 输出应如下图所示: 像这样,我有许多行和列数据,我正在R中寻找解决方案。我们创建一个“df2”作为“df1”的副本。使用“i1”和“i2”索引,我们用符合条件的相应“UCL”和“ICL”值替换“df2”中的1:4列 df2 <- df1 i1 <- df1[1:4] > df1$UCL i2 <- df1[1:4] < df1$LCL d

我想有条件地替换R中每列的值。我的数据如下图所示

在本例中,我要检查值是否为>UCL,然后是否要替换为UCL值,以及值是否为 输出应如下图所示:


像这样,我有许多行和列数据,我正在R中寻找解决方案。

我们创建一个“df2”作为“df1”的副本。使用“i1”和“i2”索引,我们用符合条件的相应“UCL”和“ICL”值替换“df2”中的1:4列

df2 <- df1
i1 <- df1[1:4] > df1$UCL
i2 <- df1[1:4] < df1$LCL
df2[1:4][i1] <- df2$UCL[row(df2[1:4])][i1]
df2[1:4][i2] <- df2$LCL[row(df2[1:4])][i2]

df2使用
dput添加数据集示例
请:
dput(head(mydata))
。欢迎使用StackOverflow!请阅读相关信息以及如何给出建议。这将使其他人更容易帮助你。谢谢,它很好用。。。。在您的代码中,我只需将列编号替换为4,对吗?@Vinay是的,您可以将其替换为相关列或使用
df2[grep(“^M',names(df2))]