R中的ifelse函数

生命人生

我正在尝试制作一个功能,如果功能与5,1或5,0相匹配,则会打印出奖品。

以下情况甚至可能吗?我尝试了各种方法并设法接收到相同的错误:

powerball_numbers(5,1)

  Error in powerball_numbers(5, 1) : unused argument (1)

  # total Grand Prize
  grand_prize <- 10000000
  #M5 white balls and one red
  w_5_r_1 <- c(5,1)

 #Second Prize of $1,000,000
 second_prize <- 50000
 #Match 5 white balls and 0 Red
 w_5_r_0 <- c(5,0)

  powerball_numbers <- function(x) {ifelse(x = w_5_r_1, grand_prize) 
                              ifelse(x = w_5_r_0, second_prize)
                              }
  powerball_numbers(5,1)

   Error in powerball_numbers(5, 1) : unused argument (1)
丹尼斯

这里有各种错误。否则,该条件==应用于数字,字符或因素。

然后你的函数只接受一个参数,然后给两个参数,该参数应该是c(5,1),而不是5,1,它是两个数字

第三,您不能使用来比较向量或列表的相等性==,而应使用identical()函数

而ifelse的想法是为tRUE和False条件提供答案

 powerball_numbers <- function(x) {if(identical(x,w_5_r_1)){grand_prize} else if(identical(x,w_5_r_0)){second_prize}}
 powerball_numbers(c(5,1))
[1] 1e+07

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章