gpt4 book ai didi

r - 在 n 个图中绘制一个数值变量与 n 个数值变量的关系图

转载 作者:行者123 更新时间:2023-12-02 23:12:38 25 4
gpt4 key购买 nike

我有一个巨大的数据框,我想制作一些图来了解不同变量之间的关联。我无法使用

pairs(data)

,因为这会给我 400 多个图。然而,我对一个响应变量 y 特别感兴趣。因此,我想针对所有变量绘制 y 的图,这会将绘图数量从 n^2 减少到 n。我该怎么做?

编辑:为了清楚起见,我添加了一个示例。假设我有数据框

foo=data.frame(x1=1:10,x2=seq(0.1,1,0.1),x3=-7:2,x4=runif(10,0,1))

我的响应变量是x3。然后我想生成四个连续排列的图,分别是 x1 与 x3、x2 与 x3、x3 的直方图,最后是 x4 与 x3。我知道如何制作每个情节

plot(foo$x1,foo$x3)
plot(foo$x2,foo$x3)
hist(foo$x3)
plot(foo$x4,foo$x3)

但是我不知道如何将它们排列成一行。另外,如果有一种方法可以自动绘制所有 n 个图,而不必每次都调用命令图(或 hist),那就太好了。当 n=4 时,这并不是什么大问题,但我通常处理 n=20+ 变量,因此可能会很麻烦。

最佳答案

可以进行reshape2/ggplot2/gridExtra包组合。这样您就不需要指定绘图的数量。此代码无需任何修改即可处理任意数量的解释变量

foo <- data.frame(x1=1:10,x2=seq(0.1,1,0.1),x3=-7:2,x4=runif(10,0,1))
library(reshape2)
foo2 <- melt(foo, "x3")
library(ggplot2)
p1 <- ggplot(foo2, aes(value, x3)) + geom_point() + facet_grid(.~variable)
p2 <- ggplot(foo, aes(x = x3)) + geom_histogram()
library(gridExtra)
grid.arrange(p1, p2, ncol=2)

enter image description here

关于r - 在 n 个图中绘制一个数值变量与 n 个数值变量的关系图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24648729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com