网络编程
位置:首页>> 网络编程>> Python编程>> python 多维高斯分布数据生成方式

python 多维高斯分布数据生成方式

作者:颹蕭蕭  发布时间:2022-12-20 20:29:40 

标签:python,多维,高斯分布,数据生成

我就废话不多说了,直接上代码吧!


import numpy as np
import matplotlib.pyplot as plt

def gen_clusters():
 mean1 = [0,0]
 cov1 = [[1,0],[0,10]]
 data = np.random.multivariate_normal(mean1,cov1,100)

mean2 = [10,10]
 cov2 = [[10,0],[0,1]]
 data = np.append(data,
          np.random.multivariate_normal(mean2,cov2,100),
          0)

mean3 = [10,0]
 cov3 = [[3,0],[0,4]]
 data = np.append(data,
          np.random.multivariate_normal(mean3,cov3,100),
          0)

return np.round(data,4)

def save_data(data,filename):
 with open(filename,'w') as file:
   for i in range(data.shape[0]):
     file.write(str(data[i,0])+','+str(data[i,1])+'\n')

def load_data(filename):
 data = []
 with open(filename,'r') as file:
   for line in file.readlines():
     data.append([ float(i) for i in line.split(',')])
 return np.array(data)

def show_scatter(data):
 x,y = data.T
 plt.scatter(x,y)
 plt.axis()
 plt.title("scatter")
 plt.xlabel("x")
 plt.ylabel("y")

data = gen_clusters()
save_data(data,'3clusters.txt')
d = load_data('3clusters.txt')
show_scatter(d)

python 多维高斯分布数据生成方式

来源:https://blog.csdn.net/itnerd/article/details/83418082

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com