gpt4 book ai didi

R:如何在向量上使用类似 "if"的函数但没有 "ifelse"因为如果没有它什么都不做

转载 作者:行者123 更新时间:2023-12-04 20:04:20 25 4
gpt4 key购买 nike

我尝试使用基于第三个变量的条件的另一个变量的值一次覆盖多个变量(某种日历中的月份)。如果条件为假,则不应发生任何事情。

我认为 If 函数会有所帮助,因为可以省略 else 但不,它不适用于向量。

    DF1[,3:4] <- if (DF1$v7==5) {DFDF1$v5}  
the condition has length > 1 and only the first element will be used

另一方面,拟合向量是 ifelse,但它告诉我
    DF1[,3:4] <- ifelse (DF1$v7==5, DF1$v5, )
"argument "no" is missing, with no default",

那么我应该怎么做才能实现我的目标?

感谢您的任何建议,像我这样的初学者不胜感激!

PS:变量只是示例。

编辑:我正在寻找一种方法,我可以在其中解决应该由 DF1​​[, 3:4] 中的列号替换的变量,否则我将不得不键入多达 12 个不同的变量名称(在我的原始 DF 中)。

最佳答案

一栏接一栏。关于else条件,只用原值

for (i in 3:4){
DF[,i] <- ifelse(DF$v7 == 5, DF1$v5, DF[,i])
}

关于R:如何在向量上使用类似 "if"的函数但没有 "ifelse"因为如果没有它什么都不做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27370194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com