r - 使用多个 if else 语句

标签 r

我不知道我需要什么。这是我真正需要的简化。

如果某个数字出现在向量中,我想处理每个函数, 这是示例:

v <- c(111,88,222,99,555,1,9,6)

if(111 %in% v){
   x <- 111+0.1
 } else if(222 %in% v){
   y <- 222+0.1
 } else if(555 %in% v){
   z <- 555+0.1
 }

如果在向量v中找到给定的数字,我想处理每个函数。

在上面的示例中,if else 示例将给出数字 111.1222.1333.1,什么我这里做错了吗?

基本上,如果向量中出现某个数字,我想计算每个函数。

最佳答案

您希望始终对 if 检查进行评估,但一旦第一个为 true,则永远无法检查以下内容,因为它们前面有 èlse 。只需删除 else 子句即可:

v <- c(111,88,222,99,555,1,9,6)

if(111 %in% v){
   x <- 111+0.1
}
if(222 %in% v){
   y <- 222+0.1
}
if(555 %in% v){
   z <- 555+0.1
}

关于r - 使用多个 if else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30537986/

相关文章:

r - 使用 R 将 GTFS 空间数据从字符转换为数字

r - 自事件重复发生以来累计经过的天数(按组)

按时间段滚动平均值而不是 R 中的观察

r - 通过函数对 data.table 进行绝对降序排序?

r - 使用 col1 或 col2 连接两个数据帧,然后添加结果

r - 使用 with() 与调用向量相比有什么优势?

r - xts 错误 - 请帮助解释行为

r - 在 r 中添加了置信区间(箱线图和 wisker 图)的 xyplot

javascript - R Shiny DataTable 选定的行颜色

r - 将 tibbles 与不同的列连接起来