Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除未使用的分类值箱线图-R_R_Dataframe_Boxplot - Fatal编程技术网

删除未使用的分类值箱线图-R

删除未使用的分类值箱线图-R,r,dataframe,boxplot,R,Dataframe,Boxplot,我有以下代码: x = rnorm(30, 1, 1) c = c(rep("x1",10), rep("x2",10), rep("x3",10)) df = dataframe(x,c) boxplot(x ~ c, data=df) 它工作得很好。但如果我决定不再对x3感兴趣,请将其删除,然后重新打印: dfMod = subset(df, c %in% c("x1", "x2")) boxplot(x ~ c,data=dfMod) 箱线图仍然显示x3的一列 我试着用 boxplo

我有以下代码:

x = rnorm(30, 1, 1)
c = c(rep("x1",10), rep("x2",10), rep("x3",10))
df = dataframe(x,c)
boxplot(x ~ c, data=df)
它工作得很好。但如果我决定不再对x3感兴趣,请将其删除,然后重新打印:

dfMod = subset(df, c %in% c("x1", "x2"))
boxplot(x ~ c,data=dfMod)
箱线图仍然显示x3的一列

我试着用

boxplot(x~c,data=dfMod, names = c("x1", "x2"))

但这会引发一个错误,即名称大小不正确。提前感谢您的帮助

子集

dfMod <- subset(df, c %in% c("x1", "x2"))    
dfMod$c <- droplevels(dfMod$c)
boxplot(x ~ c,data=dfMod)

很明显,这是一件容易做到的事情,我为不得不这么问而感到有点尴尬。为了更好地掌握R术语,我应该在谷歌上搜索什么才能找到droplevels命令?“从数据框列中删除未使用的分类值”并没有被证明特别有用,如果你在谷歌上写下“删除r中未使用的因素”,你会得到很多关于删除未使用级别的结果;)
class(df) <- c("numeric", "character")
boxplot(x ~ c, subset=c %in% c("x1", "x2"),  data=df)