如何考虑 - 有时是估算 - 地理距离

数据挖掘 数据 缺失数据 数据插补
2022-02-17 00:01:45

我有一个数据集,其中一个(重要的)特征是距纽约市的地理距离。当然,有些价值是缺失的……目标是预测具有某些属性的人(接近是其中之一,而典型的年龄、性别、教育等是其他属性)是否会在纽约(例如,参观现代艺术博物馆、参加百老汇演出、完全搬到城市、就读地区学校,诸如此类)。

我的基本问题是 - 除了缺失值 - 只考虑“原样”的距离是否正确,或者是否应该以某种方式将它们划分为“驾驶/火车距离”和“飞行距离”(本质上,将它们转换为“通过最有效的方式到达纽约市需要几个小时”)?

如果我们以洛杉矶和弗吉尼亚州里士满为例——从洛杉矶到纽约市的距离大约是里士满的 10 倍;飞行时间仅延长 4 倍,但从洛杉矶出发的飞行时间和从里士满出发的车程时间大致相同。那么思考这个问题的正确方法是什么?

一旦确定了正确的距离方法,如何为缺失值估算距离?

2个回答

我不认为独处时间是你所追求的,尽管它肯定是有用的。

在我看来,您还想考虑运输成本

是的,开车和飞行可能需要相同的时间,但您可能会看到总成本的数量级差异。如果您只关注极其富有的人,这可能无关紧要,但否则这可能会产生与独处时间一样大的影响。

我的建议是使用现有的距离列来估算最低运输成本,类似于估算最短运输时间的方法。然后我会同时使用时间和成本作为模型的输入。

我想说,为了你的目标,到纽约的时间比距离要好。的确,不管我是100公里还是10公里,如果我到市中心要花一个小时,对我来说都是同样的负担。

因此,由于物流的运作方式,我建议您使用时间而不是距离本身作为衡量标准。

然后,对于您丢失的测量值,最好的方法是使用计算近似的测地距离/时间。这也是有道理的,因为用户从 A 到 C,但如果没有这样的路径,他需要先花时间去 B,然后再从 B 到 C。

因此,对于缺少的条目 A->C,您可以用 min(AB+BC+epsilon) 填充它们,其中 B 是所有可用城市的集合(我认为人们不会考虑超过 1 跳,所以您不需要完整的距离矩阵-> Floyd Warshall 算法),并且 espilon 可能是从一个火车站/机场到另一个火车站/机场的时间。