gpt4 book ai didi

r - 在 Apply 中使用数据框列名称作为图表标签

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

我想创建一系列 x-y 散点图,其中 y 始终是相同的变量,x 是我要检查它们是否相关的变量。作为示例,让我们使用 mtcars 数据集。

我对 R 比较陌生,但正在变得更好。

下面的代码有效,列表图表包含所有图表,除了 X 轴显示为“x”,我希望它是变量的名称。我尝试了很多 xlab= 的组合,但我似乎不明白

如果我使用 names(data),我会看到我想要使用的名称。我想我想引用 names(data) 的第一个 apply 的第一次迭代,第二次引用第二次,等等。我该怎么做?

下一步是将它们一起打印在一个格子中,我假设 lapplysapply 将通过打印功能完成技巧 - 我很欣赏这个想法也只是指示,我不需要解决方案。

load(mtcars)
mypanel <- function(x,y,...) {
panel.xyplot(x,data[,y],...)
panel.grid(x=-1,y=-1)
panel.lmline(x,y,col="red",lwd=1,lty=1)
}
data <- mtcars[,2:11]
charts <- apply(data,2,function(x) xyplot (mtcars[,1] ~ x, panel=mypanel,ylab="MPG"))

这一切都是因为我无法使用面板功能循环开始的。

最佳答案

我没有发现这段代码“有效”。为此修改它:

mypanel <- function(x,y,...) {
panel.xyplot(x, y, ...)
panel.grid(x=-1, y=-1)
panel.lmline(x,y,col="red",lwd=1,lty=1)
}
data <- mtcars[,2:11]
charts <- lapply(names(data), function(x) { xyplot (mtcars[,1] ~ mtcars[,x],
panel=mypanel,ylab="MPG", xlab=x)})

需要从面板函数中删除“data[,y]”并传递名称而不是列向量,因此有一些东西可用于 x 标签。

关于r - 在 Apply 中使用数据框列名称作为图表标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14329626/

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