在R中,我们使用 ifelse(test,yes,no)命令。我面临的问题是,如果一个codiation出现,我需要执行各种声明,例如
ifelse(FP $月== 1,(FP $ SUM(sales_1),FP $ SUM(sales_2)),0)
所以我给出了两个条件,如果fp $ month = 1.这些条件是 sum(fp $ sales_1),sum(fp $ sales_2),但是R正在识别第二个逗号。如何给出多个真正的条件?
示例是
a <- "01"
b <- c(1,2,3,4,5,6)
c <- c(12,13,1234,1334,23)
d <- ifelse(a=="01",(sum(b),sum(c)),0)
这里我想如果“a”值是“01”那么我想要矢量b和c的总和。但我得到错误: -
Error: unexpected ',' in "d <- ifelse(a=="01",(sum(b),"_
预期产量为: -
[1] 21 2616
答案 0 :(得分:0)
你可以使用&amp; ('和')声明。 您还需要将总和分配给变量,如下所示:
a <- "01"
b <- c(1,2,3,4,5,6)
c <- c(12,13,1234,1334,23)
d <- ifelse(a=="01",( (b <- sum(b)) & (c <- sum(c)) ),0)
答案 1 :(得分:-2)
这有效:
a <- "01"
ifelse(a=="01", d <- c(sum(b),sum(c)), d <- 0)
d
#[1] 21 2616
a <- "02"
ifelse(a=="01", d <- c(sum(b),sum(c)), d <-0)
d
#[1] 0