本文主要是介绍Statistical transformations 统计转换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
下图显示了钻石数据集中的钻石总数,按切工分组。钻石数据集来自 ggplot2,包含大约 54,000 颗钻石的信息,包括每颗钻石的价格、克拉、颜色、净度和切工。该图表显示,与低质量切割相比,高质量切割的钻石更多。
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut))
在 x 轴上,图表显示切工,这是钻石的一个变量。 在 y 轴上,它显示计数,但计数不是钻石中的变量! 计数从何而来? 许多图表(如散点图)绘制数据集的原始值。 其他图形,如条形图,计算要绘制的新值:
- 条形图、直方图和频率多边形对您的数据进行分箱,然后绘制分箱计数,即落在每个分箱中的点数。
- 平滑器将模型拟合到您的数据,然后根据模型绘制预测。
- boxplots 计算分布的可靠摘要,然后显示一个特殊格式的框。
用于计算图形新值的算法称为 stat,是统计变换的缩写。 下图描述了这个过程如何与 geom_bar() 一起工作。
您可以通过检查 stat 参数的默认值来了解 geom 使用的统计信息。 例如,?geom_bar 显示 stat 的默认值是“count”,这意味着 geom_bar() 使用 stat_count()。 stat_count() 与 geom_bar() 记录在同一页面上,如果向下滚动,您可以找到名为“计算变量”的部分。 这描述了它如何计算两个新变量:count 和 prop。 您通常可以交替使用 geoms 和 stats。 例如,您可以使用 stat_count() 而不是 geom_bar() 重新创建之前的图:
ggplot(data = diamonds) + stat_count(mapping = aes(x = cut))
在下面的代码中,我将 geom_bar() 的 stat 从 count(默认)更改为 identity。 这让我可以将条形的高度映射到 y 的原始值.
demo <- tribble(~cut, ~freq,"Fair", 1610,"Good", 4906,"Very Good", 12082,"Premium", 13791,"Ideal", 21551
)ggplot(data = demo) +geom_bar(mapping = aes(x = cut, y = freq), stat = "identity")
例如,您可能想要显示比例条形图,而不是计数:
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, y = stat(prop), group = 1))
例如,您可以使用 stat_summary() 来汇总每个唯一 x 值的 y 值,以引起对您正在计算的摘要的注意:
ggplot(data = diamonds) + stat_summary(mapping = aes(x = cut, y = depth),fun.min = min,fun.max = max,fun = median)
ggplot2 提供超过 20 个统计数据供您使用。 每个 stat 都是一个函数,因此您可以通过通常的方式获得帮助,例如 ?stat_bin。 要查看完整的统计信息列表,请尝试 ggplot2 备忘单。
这篇关于Statistical transformations 统计转换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!