我有两个csv文件,每个文件由一列数据组成
例如,vecA.csv就像
id
1
2
Run Code Online (Sandbox Code Playgroud)
vecB.csv就像
id
3
2
Run Code Online (Sandbox Code Playgroud)
我读了数据集如下:
vectorA<-read.table("vecA.csv",sep=",",header=T)
vectorB<-read.table("vecB.csv",sep=",",header=T)
Run Code Online (Sandbox Code Playgroud)
我想生成一个由属于B的元素组成的向量.
当我filter从dplyr包中使用以删除因子变量的级别时,filter也会删除NA值.这是一个例子:
library(dplyr)
set.seed(919)
(dat <- data.frame(var1 = factor(sample(c(1:3, NA), size = 10, replace = T))))
# var1
# 1 <NA>
# 2 3
# 3 3
# 4 1
# 5 1
# 6 <NA>
# 7 2
# 8 2
# 9 <NA>
# 10 1
filter(dat, var1 != 1)
# var1
# 1 3
# 2 3
# 3 2
# 4 2
Run Code Online (Sandbox Code Playgroud)
这似乎并不理想 - 我只想把行放在哪里var1 == 1. …
从数据框中删除多个元素的最佳方法是什么?在我的情况下,我在数据框架中拥有该月的所有日期,并且想要删除几天.像下面这样的东西可以运行一天.
m[m$date!="01/31/11",]
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试类似的东西
m[m$date!=c("01/31/11","01/30/11"),]
Run Code Online (Sandbox Code Playgroud)
我收到一条警告信息
Warning message:
In `!=.default`(m$date, c("01/31/11", "01/30/11")) :
longer object length is not a multiple of shorter object length
Calls: [ ... [.data.frame -> Ops.dates -> NextMethod -> Ops.times -> NextMethod
Run Code Online (Sandbox Code Playgroud)
它似乎工作了两天,但如果我将01/29/11添加到矢量它显示所有日子,但是01/31/11.