什么时候应该将 Age 列转换为 float 或 int?

When should you convert Age column in float or int?

我有这个疑问,通常数据集的 Age 列值是 int 或 float 数据类型(例如泰坦尼克号)。 因此,假设该列具有所有浮点值,您应该将它们全部转换为 int 还是让它在将其提供给 ML 模型时就像那样, 对预测结果有没有坏处或不利影响,正确的方法是什么?

最好将 age 列转换为 int。如果出现一些垃圾值,就会影响模型。我们都知道年龄是整数

如果数据质量很好,并且您确定年龄不会浮动,那么您也可以不进行转换而继续。

age是一个连续变量,即人一直在变老,不只是一年变老一次,所以最能反映的数据类型老化过程应该是 float 而不是 integer但是使用 floatinteger 取决于用例,例如:

  • 您是否使用 age 作为描述人们年龄的特征?更好地使用漂浮物(例如,一个 59.9 岁的人比一个 59.1 岁的人年长,并且可能更容易患上某些疾病,或者可能身体不太健康并且不太可能在沉船事件中幸存下来)
  • 您在报告 age 个群组吗?四舍五入到最接近的整数(例如 39.9 -> 40、34.2 -> 34)并可能合并(例如 25-34、35-45)
  • 可能会更好
  • 您是否正在开展一个项目来评估 under-aged 饮酒(从法律角度)?那么您应该使用向下舍入的 int 值(例如,如果法定年龄为 16 岁而某人为 15.9 岁,那么他们在法律上为 15 岁,因此 under-aged 饮酒)
  • 等...

一般来说,您经常会发现没有单一的 "right way" 处理数据,这完全取决于用例。