如何将for循环结果与R关联为向量

问题描述

第一次来这里呵呵。我知道我的问题可能是一个愚蠢的问题,但找不到我所调查的其他问题的答案。

我正在尝试将表示频段首选项的字符串矢量(来自较大的数据帧)转换为“ 1”和“ 0”,对于特定频段为1,对于所有其他频段为0。但是,当我使用print()而不分配结果时,我的代码工作正常。当我尝试使用return()或另一种分配模式时,它带有错误或仅一个值。这是我的代码:

 for(x in ){
  if('Pb&C' %in% x){
print(1)} else{
print(0)}
}
}

如何将结果转换为矢量?

我已经尝试过这些,但是都出现错误:

for (x in rejeicao) {
     if ('Pb&C' %in% x) {
   a <- return(1)
 }  else{
  a <- return(0)
}
}

a

还有:

for (x in rejeicao) {
     if ('Pb&C' %in% x) {
   a[x,] <- return(1)
 }  else{
  a[x,] <- return(0)
}
}

非常感谢

解决方法

R是向量化语言,因此您只需要将测试结果分配给所需的变量。

此代码将得出TRUE / FALSE值。

a <- rejeicao == 'Pb&C'

要转换为0/1,我们使用以下事实:在数学表达式中使用时TRUE变为1,而FALSE变为0。

a <- (rejeicao == 'Pb&C')*1

您将要了解有关尝试使用的其他关键字的更多信息,即%in%return,因为我认为它们并没有像您想的那样工作。但是StackOverflow是一个问题/答案站点,在这里重要的是要提出特定的问题并专门回答这些问题,而不是邮件列表,因此这些详细信息不适合在此处包含。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...