R语言中符合条件筛选行

Python012

R语言中符合条件筛选行,第1张

如果两个数据集的变量完全一样的话可以直接这样 :

newdata<-merge(longlist,shortlist,all=FALSE)

得到的就是两个的交集。

如果变量不同的话,可以接着刚才操作,设定变量x用来标注longlist中的id是否也在shorlist中出现过:

id<-newdata$id

x<-c("true")

a<-cbind(id,x)

a<-data.frame(a)

longlist<-merge(longlist,a,all=TRUE)

然后longlist中就会多出x变量,与shortlist相同的id后面x为true

条件执行结构包括if-else、ifelse和switch。

1)if-else结构

if - else 结构

if-else在某个结构在某个给定条件为真时,执行语句;也可以同时在条件为假时,执行另外的语句。

语法为:

if (条件) 执行语句

if (条件) 执行语句A else 执行语句B

2)ifelse结构

ifelse结构是if-else结构比较紧凑的向量化版本,其语法为

ifelse(条件1, 执行A, 执行B)

如果条件1为真,则执行A, 否则执行B.

这个和C中的if有点像(C中的if暂时想不起来了,但感觉是类似的)