我有一个数据框
r <- data.frame("a" = c(1,2,2,0,0,3,0,3),"b"=c("a","b","c","a","a","c","d","d"))
# a b
# 1 1 a
# 2 2 b
# 3 0 c
# 4 0 a
# 5 0 a
# 6 3 c
# 7 0 d
# 8 3 d
我想制作上述数据框的子集,该子集应遵循给定的条件
我想保留所有1. r$a !=0
,2的行r$a==0
,但是对于行,如果r$b=="a"
保留,则保留它
我试图做r[!(r$a==0),]
,但是那仅是针对第一个条件,我将如何放置第二条件。
输出将是
# a b
# 1 1 a
# 2 2 b
# 3 0 a
# 4 0 a
# 5 3 c
# 6 3 d
用这个:
r[r$a!=0 | (r$a==0 & r$b=="a"),]
或者,您可以只使用:
r[r$a!=0 | r$b=="a",]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句