Pergunta

Eu tenho um conjunto de dados que se parece com isso ...

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

E quero criar um boxplot no GGPlot2 para mostrar a distribuição de toneladas para cada semana. Mas eu só quero resultados do meu AA.

Eu pensei que funcionaria assim ....

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

Mas, em vez disso, recebo esse erro.

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

  arguments imply differing number of rows: 423100, 109436

Provavelmente é morto simples, mas não estou tendo muita sorte imaginando a maneira certa de fazer isso.

Foi útil?

Solução

perto. No seu exemplo, você criou um subconjunto de toneladas, mas não da semana.

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")
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top