1
我使用生成的600长度样本:如何使用if语句在r中增加两个变量?
x <- rnorm(600, mean = 30, sd = 10)
,然后使用由另一个600长名单:
y = ((x-30)/10)
,我的计划是需要如果测试y是否语句大于1.96如果-y
小于1.96,并且如果发生这种情况,则将变量a
增加1,如果这没有发生,则将变量b
增加1.
我试过了fo llowing事情:
a = 0
b = 0
ifelse(y > 1.96, inc(a) <- 1, inc(b) <- 1)
ifelse(-y < -1.96, inc(a) <- 1, inc(b) <- 1)
错误INC(一)< - 1:找不到功能 “增量< - ” 错误INC(B)< - 1:找不到函数“INC < - “
ifelse(y > 1.96, '+'(a) <- 1, '+'(b) <- 1)
ifelse(-y < -1.96, '+'(a) <- 1, '+'(b) <- 1)
错误+一个< - 1:找不到功能 ”+ < - “ 误差在+ B < - 1:找不到函数 “+ < - ”
if (y > 1.96) {
a = a + 1
}
if (-y < -1.96) {
a = a + 1
} else{
b = b + 1
}
警告消息: 在如果(Y> 1.96){: 条件具有长度> 1且只第一个元素将被用于
ifelse(y > 1.96, a <- a + 1, b <- b + 1)
ifelse(-y < -1.96, a <- a + 1, b <- b + 1)
这几乎工作,但它给了我全部为1的输出和:
a
# [1] 1
b
# [1] 1
那么我该如何增加变量或者我做错了什么?
如果y> 1.96,那么-y必须<-1.96。 R是矢量化的,所以sum(y> 1.96)等将起作用 –