R 在数据帧列中查找长度不同的向量元素
我想检查vector的元素是否是dataframe列的元素。然后在df中添加一列,表示是否找到(此处:0或1)R 在数据帧列中查找长度不同的向量元素,r,R,我想检查vector的元素是否是dataframe列的元素。然后在df中添加一列,表示是否找到(此处:0或1) df好 在这里发布之前,我花了几个小时研究了一个解决方案。写完后,我顿悟了。。。。而且它有效 因此,在这里分享我的解决方案: rows<-dim(df)[1] for(j in 1:rows){ elements.to.search<-c(2,4) if(((is.element(df[j,1],elements.to.search)))) { d
df好
在这里发布之前,我花了几个小时研究了一个解决方案。写完后,我顿悟了。。。。而且它有效
因此,在这里分享我的解决方案:
rows<-dim(df)[1]
for(j in 1:rows){
elements.to.search<-c(2,4)
if(((is.element(df[j,1],elements.to.search))))
{
df[j,2] <- 0
}
}
行您可以使用数据表
。(顺便说一句,示例df
是一个矩阵
)
听起来你想要代码> cBin(df,FLAG=A.Nigic(DF[,1)%%C(2,4))但是FYI这是一个矩阵,不是一个数据帧,在这里晚些时候,但是我认为我应该正确地评论。李察,你完全正确。这似乎也行得通。但是我的编程基础是C和C++,所以我的R代码会有一些重C俚语。(特别是循环xD).我正在尝试适应Rs的具体和快速的方式。但由于我是这里唯一一个用R编程的人,当代码中有c-Slang时,我的同事阅读代码要容易得多。你有没有碰巧看到你问题下的注释?谢谢David提到Richards的评论。我仍然对stackov的一些问题读过头了erflow由于布局的原因。但我在发表评论几分钟后才阅读了它。但由于我的同事没有使用R编程,我将坚持使用我的c-slang解决方案Krung,我已经使用R大约一年了。但我仍然更适合c-slang R。这是一个非常好但很重的纯R语言解决方案。我用c-slang解决了它这就足够了。但由于我要求在R中找到一个解决方案,我将投票支持你的答案,并将其设置为解决方案。非常感谢
rows<-dim(df)[1]
for(j in 1:rows){
elements.to.search<-c(2,4)
if(((is.element(df[j,1],elements.to.search))))
{
df[j,2] <- 0
}
}
library(data.table)
setDT(list(df))[, Flag:=(V1 %in% c(2,4))+0L][]
# V1 Flag
#1: 1 0
#2: 2 1
#3: 3 0
#4: 4 1
#5: 5 0
#6: 6 0