如何在Pandas Dataframe 中对属性进行标签编码?

fwzugrvs  于 2023-01-19  发布在  其他
关注(0)|答案(3)|浏览(172)
    • 示例:**
    • 假定属性结果**
    • 结果**

| 男|
| 乙|
| 乙|
| 男|

    • 进入**
    • 结果**

| 无|
| 1个|
| 1个|
| 无|

  • 在不使用LabelEncoder或OneHotEncoding的情况下实现这一点。就像有没有可能的方法可以使用python字典来实现这一点?*
k4aesqcs

k4aesqcs1#

我建议创建一个字典来将值Map到新标签,并使用map()方法对属性进行标签编码。
比如:

df['result'].map(mapping_dict)
yvfmudvl

yvfmudvl2#

像这样的东西会有用的,

df = pd.DataFrame(data=[{'result': 'M'}, {'result':'B'}, {'result':'B'}, {'result':'M'}])
# Sol 1
def changeValue(r):
    if r == 'M':
        return 0
    else:
        return 1

df.apply(lambda x: changeValue(x['result']), axis=1)
# Sol 2
# df['result'].map({'M': 0, 'B': 1})
ar7v8xwq

ar7v8xwq3#

试试这个:

f, _ = pd.factorize(df['Result'])
df['Result'] = f
print(df)
>>>

  Result
0   0
1   1
2   1
3   0

相关问题