如何可视化预测连续结果的序数变量?
机器算法验证
数据可视化
序数数据
2022-04-04 23:02:18
4个回答
你展示的情节很不错。但我认为您可以通过显示所有数据点来进一步提高数据墨水比(由Edward Tufte发明)。您可以通过向 x 轴添加抖动来完成此操作。
另一个改进是强调序数变量是分类的而不是连续的。您可以通过为不同的级别使用不同的颜色来做到这一点。
作为一个例子,我在 R 中绘制了 Titanic 数据集,使用乘客类别作为序数变量,乘客年龄作为连续变量。
library(tidyverse)
library(ggplot2)
library(titanic)
df <- titanic_train %>% mutate(Class=factor(Pclass))
ggplot(df, aes(Class, Age, color=Class)) +
geom_jitter(height = 0) +
ggtitle("Titanic passenger age vs. class")
如上图所示,明确显示中位数和四分位数范围是可选的。
引用维基百科:
小提琴图类似于箱线图,除了它们还显示不同值的数据的概率密度,通常由核密度估计器平滑。
小提琴图比普通的箱形图更能提供信息。箱线图仅显示汇总统计数据,例如平均值/中位数和四分位间距,而小提琴图则显示了数据的完整分布。当数据分布是多峰的(多于一个峰)时,这种差异特别有用。
类似的替代方法是堆叠直方图或密度估计器:
在您的散点图中,我会在每个唯一 X 值处添加一个表示平均 Y 值的大点,并执行以下一项或多项操作:
- 平方根(或立方根)变换您的 Y 轴。与对数转换不同,这两种转换都可以处理零。立方根也可以处理负数。
- 使点有点透明。
- 如果前面的步骤不充分,请在 X 轴值上添加一点抖动。
正如 Glen_b 所指出的,目前没有足够的信息来决定添加线性回归线是否有意义。





