如何在Python中把分类特征转换为数字特征

如何在Python中把分类特征转换为数字特征

创建机器学习模型是很难的,不能有具有分类值的特征,这样的模型不能发挥作用。分类变量有字符串类型的值。因此,我们必须将字符串值转换成数字。这可以通过在分类的基础上创建新的特征并为其设置数值来实现。在这篇文章中,我们将看到如何在Python中把分类特征转换为数字特征

实现步骤

第1步:导入必要的软件包和模块

# import packages and modules
import numpy as np
import pandas as pd
from sklearn import preprocessing

第2步:导入CSV文件

我们将使用pandas read_csv()方法来导入CSV文件。要查看和下载所用的CSV文件,请点击这里。

# import the CSV file
df = pd.read_csv('cluster_mpg.csv')
print(df.head())

输出:

如何在Python中把分类特征转换为数字特征?

第3步:获取所有具有分类值的特征

我们使用df.info()来寻找分类特征。分类特征的Dtype为 “对象”。

df.info()

输出:

如何在Python中把分类特征转换为数字特征?

在给定的数据库列 “origin “和 “name “是对象类型。

第4步:将原点列的字符串值转换为数字值

我们将使用preprocessing.LabelEncoder().fit()方法拟合 “origin “列。

label_encoder = preprocessing.LabelEncoder()
label_encoder.fit(df["origin"])

第5步:从分类特征中获取独特的值

我们将为此目的使用label_encoder.classes_属性。

classes_:ndarray of shape (n_classes,)

保存每个类别的标签。

# finding the unique classes
print(list(label_encoder.classes_))
print()

输出

['europe', 'japan', 'usa']

第6步:转换分类值

# values after transforming the categorical column.
print(label_encoder.transform(df["origin"]))

输出:

如何在Python中把分类特征转换为数字特征?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy教程