假设由于某种原因,我正在尝试对一个特性进行编码,假设我的特性名称是title,对于title特性,对于一个记录,我可能有不同的单词:title = '苹果','工作'.让我举例说明一下:
ID title
0 ['Apple', 'Jobs']
1 ['Wozniak']
2 ['Apple', 'Wozniak']
3 ['Jobs', 'Wozniak']
如你所见,我的独特价值观是:
unique = ['Apple','Jobs','Wozniak']
以前我使用标签编码器作为:
from sklearn.preprocessing import LabelEncoder
le.fit(unique)
for i in df['title'].index:
df['title'][i] = le.transform(df['title'][i])
我曾经得到这样的东西:
ID title
0 [782, 256]
1 [331]
2 [782, 331]
3 [256, 331]
这正是我想要的然而,这花费了太多的时间,因为我有太多的值要迭代和编码。2因此,我正在寻找一个更聪明的算法,最好具有更低的时间复杂度或更短的运行时间。
1条答案
按热度按时间5lhxktic1#
后来,我发现首先将title的元素划分为5列并应用标签编码可以解决我的问题。我现在分享一个解决方案示例:
这些进程在中的预处理文件内调用
最后,我们通过拟合唯一值来应用标签编码
最后,你将在很短的时间内准备好问题中从第一个DF到第二个DF的转换。