【问题标题】:How to replace a column with strings into a column with integers?如何将带有字符串的列替换为带有整数的列?
【发布时间】:2021-06-21 00:01:12
【问题描述】:

我正在尝试预测一个数据集,该数据集有一列包含不同的字符串。例如,有 3 个品牌,“A”、“B”和“C”,我想将它们替换为数字(例如 0、1 和 2)。

如果只有 2 个品牌,我知道该怎么做,使用 pd.eq

我曾尝试使用set,但我想知道是否有更简单的方法可以做到这一点,因为我必须用具有超过 5 个不同字符串的列替换它,它会是很烦人。

【问题讨论】:

    标签: python pandas dataset data-preprocessing


    【解决方案1】:

    您可以通过选择与这些条件匹配的记录来替换它们,假设您的数据位于 df 并且感兴趣的列是 'Brand'

    replacement = { 'A': 0, 'B': 1, 'C': 2 }
    for key, value in replacement.items():
        df.loc[df['Brand'] == key, 'Brand'] = value
    

    【讨论】:

    • 这样就行了,非常好
    【解决方案2】:
    df['Brand'].map({'A': 0, 'B':1,'C': 2})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 2022-06-14
      • 2013-08-01
      • 1970-01-01
      相关资源
      最近更新 更多