【问题标题】:Target (1 &0) Column not getting converted from str to int type目标 (1 &0) 列未从 str 转换为 int 类型
【发布时间】:2021-07-12 12:19:04
【问题描述】:

我正在尝试做一个逻辑回归项目。为了绘制图表,我使用以下代码将 0 转换为“不寻找改变”,将 1 转换为“寻找工作改变”。

retarget = {0.0: 'Not looking for job change',
           1.0: 'Looking for job change'}
hr['target'] = hr['target'].map(retarget)

但经过探索性数据分析后,我想将“不寻找工作变动”转换为 0,将“正在寻找工作变动”转换为 1。 我再次尝试了上面的代码,如下所示:

retarget2 = {'Not looking for job change': 0, 'Looking for job change': 1}
hr['target'] = hr.target.map(retarget2)

但我在目标值列中得到 NaN。 这是数据集的快照:

请帮我解决。我是 Python 新手,正在努力学习它。

【问题讨论】:

  • 您的代码对我有用。这不是最好的使用方法,但它有效。您应该在 matplotlib(或其他绘图库)中更改您的标签。
  • @Corralien 你能推荐任何其他代码来帮助将字符串值转换回数字。

标签: pandas dataframe logistic-regression data-preprocessing


【解决方案1】:

创建一个新列 target_str 而不是覆盖 target 列,并在不再需要时将其删除。

retarget = {0.0: 'Not looking for job change',
           1.0: 'Looking for job change'}
hr['target_str'] = hr['target'].map(retarget)

# do what you want with target_str

hr = hr.drop(columns='target_str')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    • 1970-01-01
    • 2021-11-19
    • 2013-04-22
    • 2021-12-18
    • 2011-05-15
    相关资源
    最近更新 更多