首页 > 解决方案 > 不了解循环输出

问题描述

当使用 'a' 变量时,解释函数按我的预期输出数字 20。

linkedin <- c(16, 9, 13, 5, 2, 17, 14)

interpret <- function(num_views) {
  if (num_views > 15) {
    print("You're popular!")
    return(num_views)
  } else {
    print("Try to be more visible!")
    return(0)
  }
}

a <- 20

interpret(a)
#[1] "You're popular!"
#[1] 20

那么为什么for循环不输出15和0以上的数字呢?

for (v in linkedin) {
     interpret(v)
}

#[1] "You're popular!"
#[1] "Try to be more visible!"
#[1] "Try to be more visible!"
#[1] "Try to be more visible!"
#[1] "Try to be more visible!"
#[1] "You're popular!"
#[1] "Try to be more visible!"

我在数据营网站而不是R软件上运行它,以防万一。

标签: rloopsfor-loop

解决方案


linkedin <- c(16, 9, 13, 5, 2, 17, 14)

interpret <- function(num_views) {
    if (num_views > 15) {
        print("You're popular!")
        print(num_views)
    } else {
        print("Try to be more visible!")
        print(0)
    }
}

a <- 20

interpret(a)

for (v in linkedin) {
    interpret(v)
}

推荐阅读