如何在Python中创建标签(自动编码)
我有这样一个数据框:如何在Python中创建标签(自动编码),python,pandas,encoding,encode,Python,Pandas,Encoding,Encode,我有这样一个数据框: Name subname Feature1 Feature2 ... AAA a 0.123 0.345 ... AAA b 0.123 0.345 ... BBB a 0.123 0.345 ... BBB b 0.123 0.345 ... 我要创建标签(添加新列): 为了使数据适合分类模型,有没有一种方法可以有效地创建这些标签?我有5000多行,非常感谢。你可以试试
Name subname Feature1 Feature2 ...
AAA a 0.123 0.345 ...
AAA b 0.123 0.345 ...
BBB a 0.123 0.345 ...
BBB b 0.123 0.345 ...
我要创建标签(添加新列):
为了使数据适合分类模型,有没有一种方法可以有效地创建这些标签?我有5000多行,非常感谢。你可以试试
labels, uniques = pd.factorize(df['Name'].tolist())
df['labels'] = labels
并将获得
array([0,0,1,1])
你用什么来编码,只是Name
?如果是df['Class']=pd.factorize(df['Name'])[0]+1
,如果是2D
因子分解,您可以使用np.unique
和return\u inverse
将标签放在单独的数据帧或序列中,或者什么?是的,仅根据“名称”,在最后一列有标签,这样我就可以在GDBT模型中选择功能,这是正确的方法吗?dupe中的两个答案都是完全有效的,你可以选择哪一个use@user3483203我在Google上查看了一些教程,我可以使用类似“from sklearn.preprocessing import LabelEncoder”的东西吗?这是一样的吗?非常感谢。
labels, uniques = pd.factorize(df['Name'].tolist())
df['labels'] = labels