Как я могу избавиться от несэмплированных данных в тепловой карте R после выборки? - PullRequest
0 голосов
/ 10 ноября 2011

Следующий код создает тепловую карту, но показывает метки на оси у для всех 194 стран, включенных в исходный набор данных (до отбора проб). Это продолжает происходить, даже если я удаляю исходный набор данных. Я также попытался выключить консоль, чтобы начать новый сеанс, но безрезультатно.

qlife.s <- myData[sample(194,size=10,replace=F),]

qlife.s.m <- melt(qlife.s)

qlife.s.m <- ddply(qlife.s.m, .(variable), transform, rescale=rescale(value))

(p <- ggplot(qlife.s.m, aes(variable, qlife.s.m$Country))
      + geom_tile( aes(fill = rescale),
                   colour = "white")
      + scale_fill_gradient(low = "red", high = "green")
)

Любой совет очень ценится. Заранее спасибо.

1 Ответ

4 голосов
/ 10 ноября 2011

Используйте droplevels() в ваших данных.Судя по всему:

qlife.s.m <- droplevels(qlife.s.m)

должен делать то, что вы хотите, но это трудно сказать без воспроизводимого примера.

...