尺度变换和坐标系变换有什么区别

Nad*_*ham 5 statistics r

在用于坐标变换的coord_trans函数的文档中,它说这个函数和scale_x_log10之间的区别是变换发生在统计之后,而尺度变换发生在之前,我在这里没有得到点检查文档。以及如何使用这两种方法绘制数据

Fat*_*o39 3

您提供的文档中的引用告诉我们,比例变换发生在与图相关的任何统计分析之前。

文档中提供的示例信息特别丰富,因为它涉及回归分析。在尺度变换的情况下,即使用

d <- subset(diamonds, carat > 0.5)
qplot(carat, price, data = d, log="xy") + geom_smooth(method="lm"),
Run Code Online (Sandbox Code Playgroud)

尺度变换

首先对尺度进行变换,然后进行回归分析。最小化误差的 SS 是在变换后的轴(或变换后的数据)上完成的,只有当您认为变量的对数之间存在线性关系时,您才需要这样做。结果是双对数图上的一条直线,即使轴未按 1:1 缩放(在本例中很难看到)。

同时,当使用

qplot(carat, price, data = d) +
geom_smooth(method="lm") +
coord_trans(x = "log10", y = "log10")
Run Code Online (Sandbox Code Playgroud)

坐标变换

首先对未转换的数据(和轴,即独立于绘图)执行回归分析,然后使用转换后的坐标绘制所有内容。这导致回归线根本不是直的,因为它的方程(或者更确切地说,它的点的坐标)在坐标变换的过程中发生了变换。

文档中通过使用进一步说明了这一点

library(scales)
qplot(carat, price, data=diamonds, log="xy") +
  geom_smooth(method="lm") +
  coord_trans(x = exp_trans(10), y = exp_trans(10))
Run Code Online (Sandbox Code Playgroud)

反向变换

您可以看到,1. 使用比例变换,2. 拟合直线,3. 将坐标变换回原始(线性)系统,这不会产生应有的直线。在第一个场景中,您实际上拟合了一条在双对数图上看起来很直的指数曲线。