如何使用Python Scikit-learn生成和绘制分类数据集?
Scikit-learn提供了make_classification()函数,可以帮助我们随机生成具有不同数量的信息特征、每个类别的簇数和类别的分类数据集。在本教程中,我们将学习如何使用Python Scikit-learn生成和绘制分类数据集。
具有一个信息特征和一个每类簇的数据集
要生成和绘制具有一个信息特征和一个簇的分类数据集,可以按照下面给出的步骤进行 –
步骤1 −导入必须执行程序的库sklearn.datasets.make_classification和matplotlib。
步骤 2 −创建数据点X和y,其中信息特征的数量和每个类别的簇数参数均为1。
步骤 3 −使用matplotlib库绘制数据集。
示例
在下面的示例中,我们生成并打印了一个具有一个信息特征和一个类别簇的分类数据集。
#导入库
from sklearn.datasets import make_classification
import matplotlib.pyplot as plt
#创建具有一个信息特征和一个每类簇的分类数据集
X, y = make_classification(n_features=2, n_redundant=0, n_informative=1, n_clusters_per_class=1)
#绘制数据集
plt.figure(figsize=(7.50, 3.50))
plt.subplots_adjust(bottom=0.05, top=0.9, left=0.05, right=0.95)
plt.subplot(111)
plt.title("一个信息特征和一个簇的分类数据集", fontsize="12")
plt.scatter(X[:, 0], X[:, 1], marker="o", c=y, s=40, edgecolor="k")
plt.show()
输出
它将产生以下输出 –
具有两个信息特征和一个每类簇的数据集
要生成和绘制具有两个信息特征和一个每类簇的分类数据集,可以按照下面给出的步骤进行 –
步骤 1 −导入必须执行程序的库sklearn.datasets.make_classification和matplotlib。
步骤 2 −创建数据点X和y,其中信息特征的数量等于2,每类簇的参数等于1。
步骤 3 −使用matplotlib库绘制数据集。
示例
在下面的示例中,我们生成并打印了一个具有两个信息特征和一个类别簇的分类数据集。
# 导入所需的库
from sklearn.datasets import make_classification
import matplotlib.pyplot as plt
# 创建具有两个信息特征和每个类别一个聚类的分类数据集
X, y = make_classification(n_features=2, n_redundant=0, n_informative=2, n_clusters_per_class=1)
# 绘制数据集
plt.figure(figsize=(7.50, 3.50))
plt.subplots_adjust(bottom=0.05, top=0.9, left=0.05, right=0.95)
plt.subplot(111)
plt.title("具有两个信息特征和每个类别一个聚类的分类数据集", fontsize="12")
plt.scatter(X[:, 0], X[:, 1], marker="o", c=y, s=40, edgecolor="k")
plt.show()
输出
运行以上代码将生成如下图所示的输出结果 −
具有两个信息特征和每个类别两个聚类的数据集
要生成和绘制具有两个信息特征和每个类别两个聚类的分类数据集,可以按照以下步骤进行 −
步骤 1 − 导入必要的库 sklearn.datasets.make_classification 和 matplotlib。
步骤 2 − 创建数据点 X 和 y,其中信息特征数和每个类别的聚类数参数均为 2。
步骤 3 − 使用 matplotlib 库绘制数据集。
例子
在下面的例子中,我们生成并打印一个具有两个信息特征和每个类别两个聚类的分类数据集。
#导入库
from sklearn.datasets import make_classification
import matplotlib.pyplot as plt
#创建具有两个信息特征和每个类别两个簇的分类数据集
X, y = make_classification(n_features=2, n_redundant=0, n_informative=2, n_clusters_per_class=2)
#绘制数据集
plt.figure(figsize=(7.50, 3.50))
plt.subplots_adjust(bottom=0.05, top=0.9, left=0.05, right=0.95)
plt.subplot(111)
plt.title("具有两个信息特征和每个类别两个簇的分类数据集", fontsize="12")
plt.scatter(X[:, 0], X[:, 1], marker="o", c=y, s=40, edgecolor="k")
plt.show()
输出
它将产生以下输出 −
多类别分类数据集
要生成并绘制具有两个信息特征和每个类别一个簇的多类分类数据集,可以执行以下步骤−
步骤 1 − 导入sklearn.datasets.make_classification和matplotlib库,这是执行程序所必需的。
步骤 2 − 创建数据点X和y,其中信息特征数等于2,每个类别的簇数参数等于1,类别数参数等于3。
步骤 3 − 使用matplotlib库绘制数据集。
示例
在下面的示例中,我们生成并打印了一个具有两个信息特征和每个类别一个簇的多类分类数据集。
# 导入库
from sklearn.datasets import make_classification
import matplotlib.pyplot as plt
# 生成包含两个相关特征和每类一个簇的多分类数据集
X, y = make_classification(n_features=2, n_redundant=0, n_informative=2, n_clusters_per_class=1, n_classes=3)
# 绘制数据集
plt.figure(figsize=(7.50, 3.50))
plt.subplots_adjust(bottom=0.05, top=0.9, left=0.05, right=0.95)
plt.subplot(111)
plt.title("包含两个相关特征和每类一个簇的多分类数据集", fontsize="12")
plt.scatter(X[:, 0], X[:, 1], marker="o", c=y, s=40, edgecolor="k")
plt.show()
输出
它将生成以下输出−