采样后如何删除 R 热图中未采样的数据?

发布于 2024-12-14 13:50:13 字数 512 浏览 3 评论 0原文

以下代码生成热图,但在 y 轴上显示原始数据集(采样前)中包含的所有 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")
)

非常感谢任何建议。提前致谢。

The following code produces a heatmap but shows labels on the y axis for all 194 countries included in the original dataset (before sampling). This continues to happen even if I remove the original dataset. I've also tried shutting down the console to start a new session, to no avail.

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")
)

Any advice is much appreciated. Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

¢蛋碎的人ぎ生 2024-12-21 13:50:13

对您的数据使用 droplevels()。从表面上看:

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

应该做你想做的事,但如果没有可重现的例子就很难说。

Use droplevels() on your data. By the looks of things:

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

should do what you want, but it is difficult to tell without a reproducible example.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文