1
0
mirror of https://github.com/sjwhitworth/golearn.git synced 2025-04-25 13:48:49 +08:00
golearn/clustering/gaussian_mixture.py

25 lines
734 B
Python

import numpy as np
import itertools
from sklearn import mixture
from sklearn import preprocessing
# Number of samples per component
n_samples = 500
# Generate random sample, two components
np.random.seed(0)
C = np.array([[0., -0.1], [1.7, .4]])
X = np.r_[np.dot(np.random.randn(n_samples, 2), C),
.7 * np.random.randn(n_samples, 2) + np.array([-6, 3])]
gmm = mixture.GaussianMixture(n_components=2, init_params='random')
gmm.fit(X)
labels = gmm.predict(X)
with open('gaussian_mixture.csv', 'w') as fout:
with open('gaussian_mixture_labels.csv', 'w') as flabout:
for i in range(1000):
fout.write(",".join([str(x) for x in X[i,:]]) + "\n")
flabout.write(str(labels[i]) + "\n")