gpt4 book ai didi

r - 我可以避免在 ggplot2 中使用数据框吗?

转载 作者:行者123 更新时间:2023-12-03 10:59:50 24 4
gpt4 key购买 nike

我正在运行蒙特卡罗模拟,输出格式如下:

> d = data.frame(iter=seq(1, 2), k1 = c(0.2, 0.6), k2=c(0.3, 0.4))
> d
iter k1 k2
1 0.2 0.3
2 0.6 0.4

我要生成的图是:
plot(d$iter, d$k1)
plot(density(d$k1))

我知道如何使用 ggplot2 绘制等效图,转换为数据框
new_d = data.frame(iter=rep(d$iter, 2), 
k = c(d$k1, d$k2),
label = rep(c('k1', 'k2'), each=2))

那么绘图很容易。然而,迭代次数可能非常大,k 的数量也可能很大。这意味着搞乱一个非常大的数据框。

无论如何我可以避免创建这个新的数据框?

谢谢

最佳答案

简短的回答是“不”,您无法避免创建数据框。 ggplot要求数据在数据框中。如果您使用 qplot ,您可以为 x 和 y 提供单独的向量,但在内部,它仍在根据您传入的参数创建数据框。

我同意朱巴的建议——学会使用 reshape功能,或者更好的是 reshape包装与 melt/cast职能。一旦您快速将数据放入长格式,就会创造惊人的 ggplot图表变得更近了一步!

关于r - 我可以避免在 ggplot2 中使用数据框吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2063821/

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