首页 > 解决方案 > 删除所有观察值都相同的列会影响我的模型吗?

问题描述

我的数据集中的一列对于所有观察/行具有相同的值。我应该在构建机器学习模型时删除该列吗?

删除此列会影响我的模型/性能指标吗?

如果我用不同的常数值替换所有值,它会改变模型/性能指标吗?

标签: pythonrpandasmachine-learningdata-science

解决方案


机器学习模型只不过是一个数学方程,即

y = f(x)

其中

y = 目标/因变量

f(x) = 自变量(在我们的例子中是包含训练/测试数据的 DataFrame)

所以从技术上讲,ML 模型量化和估计 X 的值是多少,可能的输出 y 是多少。

假设单个整列是恒定的。因此,y 和 f(x=constant) 之间的关系是没有意义的,因为无论 y 的值如何,x 都将保持不变。除了 y 也是常数的唯一选项之外,没有任何数学关系是可能的。我们可以放心地假设情况并非如此,否则为什么要建立一个模型来获得一个恒定值。

因此,我们可以安全地删除任何常量列,这不会将任何数据变化添加到 DataFrame 以节省计算时间,因为该列不会在任何意义上影响 y。


推荐阅读