【问题标题】:Add features to the “numeric” dataset whose categorical value must be mapped using a conversion formula将特征添加到必须使用转换公式映射其分类值的“数字”数据集
【发布时间】:2022-08-21 18:12:12
【问题描述】:

我有这个数据集:

这是请求: \"将 Mjob 和 Fjob 属性添加到必须使用您选择的转换公式映射其分类值的“数字”数据集。\"

有谁知道该怎么做? 例如:如果 \'at_home\' 值在 Mjob 中变为 \'1\',我希望在 Fjob 列中得到相同的结果。相同的分类值必须具有相同的整数值转换。

    标签: python pandas numpy machine-learning scikit-learn


    【解决方案1】:

    您可以将map 函数与熊猫系列/列一起使用,将分类变量从字符串数据映射到数值数据。例如,使用以下 pandas 数据框:

    data = np.array([
       ['at_home','teacher'],
       ['at_home','other'],
       ['at_home','other'],
       ['health', 'services']
    ])
    df = pd.DataFrame(data=data, columns=['Mjob', 'Fjob'])
    

    使用map 函数创建了两个新列

    map_dict = {'at_home':1, 'teacher':2, 'other':3, 'health':4, 'services':5}
    df['Mjob_numeric'] = df['Mjob'].map(map_dict)
    df['Fjob_numeric'] = df['Fjob'].map(map_dict)
    

    【讨论】:

    • 工作,我做了一点改变来获取“数据”数组:dataset.Mjob.unique().tolist()。有了这个列表,我知道这些列中哪些是唯一值,并使用它们为地图函数创建字典。谢谢你。
    猜你喜欢
    • 1970-01-01
    • 2020-03-24
    • 2016-09-19
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多