缺失数据的数据可视化

机器算法验证 数据可视化 缺失数据 样条
2022-03-24 19:59:33

我是一名设计师,正在尝试随着时间的推移绘制一组数据。例如,

Day1     Day2     Day3      Day4      Day5
 10       53       21        67        38

我正在使用正常的折线图来绘制它,但是当中间的一两天没有可用数据时(例如,如下所示),开发人员假设它为零并且绘图实际上下降到零并消失向上。我不知何故觉得这是不正确的。

Day1     Day2     Day3      Day4      Day5
 10                          67        38

当我使用 MS Excel 绘制上述数据(中间有缺失值)时,它会绘制一条从 67 到 38 的线(折线图)。如果我在第 2 天输入 25,我会看到一条从 10 到 25 的线,然后是从 67 到 38 的差距。

  1. 现在,我的问题是,简单地加入从 25(Day2)到 67(Day3)的线是否正确,这样我就可以获得连续图?

如果直线连接两点,我看到一些包含样条的设计。这在视觉上很吸引人,但我知道样条线用于数据插值(如果我错了,请纠正我)而不是在我描述的这种情况下。

  1. 我仍然可以使用样条曲线绘制已知点吗?这可以接受吗?

https://dribbble.com/shots/2062935-File-Dashboard-Free-PSD/attachments/369112

如果我的问题很蹩脚,我很抱歉,因为我在统计和数据可视化方面的知识较少。

1个回答

老实说,我只是将没有信息的数据点留空。在 R 中:

foo <- structure(c(10,NA,NA,67,38),.Names=paste0("Day",1:5))
plot(foo,xaxt="n",xlab="",ylab="",pch=19,type="o",
  ylim=c(0,max(foo,na.rm=TRUE)))
axis(1,seq_along(foo),names(foo))

阴谋


如果它反映了您拥有的有关您的数据的信息,那么其他任何东西都是可以辩护的。例如,如果您的数据库记录了销售额并且您的商店在第 2 天和第 3 天营业,但没有人想购买您的小部件,那么您可以有效地推断和绘制零点。(如果商店关门或您的小部件缺货,您不应该这样做,因为任何需求都无法得到满足。)

如果这是对没有数据期间“真实”发生的事情的“正确猜测”,您可以进行线性插值。当然,什么是“好猜测”将取决于您的具体情况。

不会使用样条曲线,除非我有很好的理由。线性插值更简单,除非需要像样条线这样更复杂的方法(奥卡姆剃刀),否则应该始终使用更简单的方法。此外,高阶样条曲线可能会爆炸,具体取决于您的特定数据。