大多数机器学习算法跟数字打交道,所以有时把这些文本标签转换为数字。
Scikit-Learn 为这个任务提供了一个转换器 LabelEncoder :
from sklearn.preprocessing import LabelEncoder
e=LabelEncoder()
hc= a['ocean_proximity']
hce=e.fit_transform(hc)
hce
hce.shape
训练转换后的文本会按相同描述分到一个数字。
该方法只适合转换一列的文本数据,转换多列的文本数据会报错,需要使用factorize() 方法。
因此建议大家多使用factorize方法。可以避免很多报错。