使用sklearn.datasets.samples_generator生成正态分布数据集
发布时间:2023-12-15 03:40:20
sklearn.datasets.samples_generator是scikit-learn库中的一个模块,用于生成各种类型的人工数据集。
正态分布,也称为高斯分布,是最常见的统计分布之一。它具有一个钟形曲线,均值在中心,标准差确定曲线的宽度。使用sklearn.datasets.samples_generator可以轻松地生成符合正态分布的人工数据集。
下面是一个使用sklearn.datasets.samples_generator生成正态分布数据集的示例代码:
import numpy as np
from sklearn.datasets import make_classification
# 生成1000个样本,每个样本包含10个特征
X, y = make_classification(n_samples=1000, n_features=10, random_state=42)
# 查看生成的数据集
print("生成的数据集 X:")
print(X)
print("生成的数据集 y:")
print(y)
在上述代码中,我们导入了必要的库和模块,并使用make_classification函数生成了一个包含1000个样本和10个特征的数据集。该函数还返回一个包含了与每个样本相关联的类别标签的目标向量。
运行上述代码,我们会得到如下输出:
生成的数据集 X: [[ 1.77644479 0.6340914 1.1866778 ... -1.49961202 1.29532102 0.88017347] [-2.94096196 0.41421912 2.33171159 ... 0.61625381 2.67133285 -0.97261913] [-4.88942595 0.73245007 2.1019318 ... 1.39589484 2.3598851 -0.81040173] ... [ 2.12279277 0.66841407 2.0780359 ... -0.60479982 -1.89716762 -0.45090617] [-2.92521679 0.74930517 2.59884133 ... -1.6187596 2.88121298 -0.64836962] [ 0.29959176 0.87883024 -1.32892565 ... 1.77293262 -3.68738026 0.39598988]] 生成的数据集 y: [0 1 1 ... 1 1 0]
从输出中可以看出,我们成功地生成了一个包含1000个样本和10个特征的数据集,并且每个样本都有一个与之相关的类别标签。
这个例子展示了如何使用sklearn.datasets.samples_generator生成正态分布的人工数据集。你可以根据自己的需求,调整参数来生成不同规模和特征的数据集,并将其用于机器学习模型的训练和评估。
