聚類算法數據生成器make_blobs


make_blobs會根據用戶指定的特征數量、中心點數量、范圍等來生成幾類數據,這些數據可用於測試聚類算法的效果。

make_blobs(n_samples=100, n_features=2,centers=3, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random_state=None)

n_samples是待生成的樣本數量,n_features是每個樣本的特征數,centers是簇數量,也可以直接指定每個簇的中心點centers=[[-1,1],[1,2],[3,3]],cluster_std是每個簇的方差,賦給cluter_std一個參數代表所有簇方差都一樣,也可制定各個簇的方差cluster_std=[10,6,25],shuffle數據洗牌,默認不用設置,random_state是隨機種子,默認隨機種子,也可以自己指定。

 

import matplotlib.pyplot as plt from sklearn.datasets.samples_generator import make_blobs # data為樣本特征,target為樣本簇類別, 共1000個樣本,每個樣本2個特征, 共4個簇, 簇中心在[-2,-2],[1,1],[3,3],[5,5], 簇方差分別為[0.4,0.2,0.1,0.3]
data, target = make_blobs(n_samples=1000, n_features=2, centers=[[-2,-2],[1,1],[3,3],[5,5]], cluster_std=[0.4,0.2,0.1,0.3], random_state=7) #畫圖 c=target代表不同簇不同顏色,marker='o'是用來指定數據的顯示形狀
plt.scatter(data[:, 0], data[: ,1], c=target, marker='o') plt.show()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM