对于机器学习问题,我为每个样本都有一个位置特征(美国的一个州),它看起来像这样:整个特征向量看起来像这样:
array(['oklahoma', 'florida', 'idaho', ..., 'pennsylvania', 'alabama', 'washington'], dtype=object)
我不能直接用sklearn算法提供这个,因此我必须以某种方式将其转换为数字特征,但我不知道如何做到这一点.它们是转换这些字符串功能的最佳方法是什么?ASCII转换会起作用吗?
编辑:我希望我的每个州都有自己独特的数值.
您可以参考标签预处理:
from sklearn import preprocessing le = preprocessing.LabelEncoder() le.fit(['oklahoma', 'florida', 'idaho', 'pennsylvania', 'alabama', 'washington']) le.classes_ # array(['alabama', 'florida', 'idaho', 'oklahoma', 'pennsylvania', # 'washington'], # dtype='|S12') le.transform(["oklahoma"]) # array([3])