我的数据框中的一列-z-包含工作日 . 我想删除"Sunday"和"Saturday"作为因素的行 . 我没有成功使用 r<-z[-c(z$x=="Sunday" & z$x=="Saturday", ]
和 r<-subset(z, x!=="Sunday" & x!=="Saturday")
. x
是列的名称 .
你能帮我搞清楚吗?谢谢 . 数据:
y x
1 1 Monday
2 2 Monday
3 3 Monday
4 4 Monday
5 5 Monday
6 6 Monday
7 7 Monday
8 8 Friday
9 9 Friday
10 10 Friday
11 11 Friday
12 12 Sunday
13 13 Sunday
14 14 Sunday
15 15 Sunday
16 16 Saturday
17 17 Saturday
18 18 Saturday
19 19 Saturday
20 20 Saturday
更新:我接受了答案,因为它与我提供的df一起工作 . 当我尝试将它应用于df时,我没有做任何事情 . 我用 flexW<-subset(flex, Day!="Sunday" & Day!="Saturday")
数据框中的选定变量:
str(flex)'data.frame':177237 obs . 14个变量:.... $ Day:因子w / 7级“星期五”,“星期一”,..:2 2 2 2 2 2 2 2 2 2 ...
5 回答
从错误输出中,您有
" Friday"," Monday"
作为输入 . 领先的空间被剥离,因为人们在这里尝试和重现,你需要使用dput(flex)
而不是粘贴,所以这样的事情不会发生 .我猜你的星期六和星期日列是一样的,所以试试:
也许这对你有用:
按照你的例子,试试这个:
只是一个基础R解决方案:
或者一个
dplyr
,几乎相同的语法 .