gpt4 book ai didi

r - 绘制 "list"的密度

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

我有一个由 10 列和 50 行组成的 data.frame。我使用 apply 函数逐列计算密度函数。现在我想绘制我一次计算的密度。

换句话说,而不是绘图...

plot(den[[1]]) 
plot(den[[2]]
plot(den[[3]]

...我想一次绘制所有密度。

我想我必须使用 lapply函数,可能我必须编写一个特定的函数来做到这一点。谁能帮我?

最佳答案

也许这会有所帮助

set.seed(001)
DF <- data.frame(matrix(rnorm(400, 100, 12), ncol=4)) # some data
den<-apply(DF, 2, density) # estimating density


par(mfrow=c(2,2))
sapply(den, plot) # plot each density
par(mfrow=c(1,1))

这使...

enter image description here

给出一些名字:
par(mfrow=c(2,2))
for(i in 1:length(den)){
plot(den[[i]],
main=paste('density ', i))
}
par(mfrow=c(1,1))

enter image description here

如果您只是不想在一个输出中包含所有图,您可能想要离开 par(mfrow=c(2,2))出去就跑 sapply(den, plot)
编辑:回答你的第二个问题(在评论中)
plot(den[[1]], ylim=c(0,.04), 
main='Densities altogether') # plot the first density
for(i in 2:length(den)){ # Add the lines to the existing plot
lines(den[[i]], col=i)
}

enter image description here

这里使用 legend 很有用添加图例的函数
legend('topright', paste('density ', 1:4), col=1:4, lty=1, cex=.65)

关于r - 绘制 "list"的密度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13286699/

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