生成团簇数据#
- sklearn.datasets.make_blobs(n_samples=100, n_features=2, *, centers=None, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random_state=None, return_centers=False)[source]#
生成用于聚类的各向同性高斯数据点。
更多详情请参考 用户指南.
- 参数:
- n_samplesint 或 array-like,默认值=100
如果为 int,则表示在各个聚类中平均分配的总点数。如果为 array-like,则序列的每个元素表示每个聚类的样本数。
v0.20 版本中已更改: 现在可以将 array-like 传递给
n_samples
参数- n_featuresint,默认值=2
每个样本的特征数量。
- centersint 或 array-like,形状为 (n_centers, n_features),默认值=None
要生成的中心数量,或固定的中心位置。如果 n_samples 是 int 且 centers 为 None,则生成 3 个中心。如果 n_samples 为 array-like,则 centers 必须为 None 或长度等于 n_samples 长度的数组。
- cluster_stdfloat 或 float 的 array-like,默认值=1.0
聚类的标准差。
- center_boxfloat 元组 (最小值, 最大值),默认值=(-10.0, 10.0)
随机生成中心时,每个聚类中心的边界框。
- shufflebool,默认值=True
是否打乱样本。
- random_stateint、RandomState 实例或 None,默认值=None
确定数据集创建的随机数生成。传递一个 int 以在多次函数调用中获得可重复的输出。参见 词汇表。
- return_centersbool,默认值=False
如果为 True,则返回每个聚类的中心。
0.23 版本中添加。
- 返回:
- X形状为 (n_samples, n_features) 的 ndarray
生成的样本。
- y形状为 (n_samples,) 的 ndarray
每个样本的聚类成员的整数标签。
- centers形状为 (n_centers, n_features) 的 ndarray
每个聚类的中心。仅当
return_centers=True
时返回。
另请参见
make_classification
更复杂的变体。
示例
>>> from sklearn.datasets import make_blobs >>> X, y = make_blobs(n_samples=10, centers=3, n_features=2, ... random_state=0) >>> print(X.shape) (10, 2) >>> y array([0, 0, 1, 0, 2, 2, 2, 1, 1, 0]) >>> X, y = make_blobs(n_samples=[3, 3, 4], centers=None, n_features=2, ... random_state=0) >>> print(X.shape) (10, 2) >>> y array([0, 1, 2, 0, 2, 2, 2, 1, 1, 0])