我想进行线性回归分析。我有多个特征。某些特征在数据中的某些项目上具有未分配(空值)的值。因为在数据源中,某些项目的特定特征值缺失。为了更清楚,我提供了一个例子:
如您所见,某些项目在某些特征上缺少值。目前,我只是将其标记为’Null’,但在对数据进行线性回归分析时,如何处理这些值?我不希望这些未分配的值错误地影响回归模型。不幸的是,我无法删除那些存在未分配特征值的项目。我计划使用Python进行回归分析。
回答:
您需要忽略这些行——您已经说过不能这样做,而且考虑到缺失值的数量,这不是一个好主意——或者使用一种主动折扣这些项目的算法,或者填补(这是填补有根据的猜测的技术术语)缺失的数据。
我们能提供的帮助有限,因为您没有告诉我们您对缺失数据的语义需求。您可以使用您喜欢的“最接近匹配”算法对现有数据进行一些缺失值的填补。例如,您很可能可以从其他数据中推断出面积的一个好猜测。
对于您的非线性、离散项目(即District),您可能希望将NULL作为一个单独的区保留。如果缺失的条目足够少,您仍然可以得到一个不错的模型。
一个简单的填补方法是用该特征的平均值替换每个NULL,但这只适用于那些具有适当平均值的特征(即不适用于District)。
总的来说,我建议您搜索关于“填补缺失数据”的适当参考资料。由于我们不确定您的需求,我们无法在这方面提供太多帮助,这样做也超出了SO的范围。