我有一个数据集,看起来像这样...

mine tonnes week
AA   112    41
AA   114    41
AA   119    41
BB   108    41 
BB   112    41
AA   110    42
AA   109    42
AA   102    43
AA   101    43

和我想创建一个GGPLOT2箱线图显示吨的每个星期的分布。但我只想和我的AA结果。

我以为它会像这样工作....

qplot(factor(week), tonnes[mine == "AA"], data = sql_results, geom = "boxplot")

但是,相反,我得到这个错误。

Error in data.frame(x = c(13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L,  :

  arguments imply differing number of rows: 423100, 109436

这也可能是死的简单,但我没有多少运气搞清楚这样做的正确方法。

有帮助吗?

解决方案

接近。在您的例子中,你创建吨的一个子集,但本周没有的。

sql_results<-structure(list(mine = structure(c(1L, 1L, 1L, 2L, 2L, 1L, 1L, 
1L, 1L), .Label = c("AA", "BB"), class = "factor"), tonnes = c(112, 
114, 119, 108, 112, 110, 109, 102, 101), week = c(41, 41, 41, 
41, 41, 42, 42, 43, 43)), row.names = c("1", "2", "3", "4", "5", 
"6", "7", "8", "9"), .Names = c("mine", "tonnes", "week"), class = "data.frame")

qplot(factor(week), tonnes, data = subset(sql_results,mine=="AA"), geom = "boxplot")
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top