我想像这样生成一个循环:
group1 = c(1,3,7,25)
for (ii in 1:25){
if (ii == any(group1)){test = 5} else {test=1}
}
我收到关于将我的“双重”类型的论点强制为逻辑的警告。结果是只使用了我的 else 语句。这是什么意思,我该如何解决这个问题?谢谢你。
我想像这样生成一个循环:
group1 = c(1,3,7,25)
for (ii in 1:25){
if (ii == any(group1)){test = 5} else {test=1}
}
我收到关于将我的“双重”类型的论点强制为逻辑的警告。结果是只使用了我的 else 语句。这是什么意思,我该如何解决这个问题?谢谢你。
目前还不清楚你想要什么。可能
test <- c(1,5)[1+(1:25) %in% group1]
结果相同:
test <- ifelse( 1:25 %in% group1, 5, 1)
哦,好的,我也会制作for
-loopy 版本:
test <- integer(25)
for (ii in 1:25){
if (ii %in% group1){test[ii] <- 5} else {test[ii] <- 1}
}
test
您使用了错误的任何功能
any(iterable)
如果可迭代的任何元素为真,则返回真。如果可迭代对象为空,则返回 False。