我想在python或R中编写一个6参数函数,该函数根据汇总数据的数字生成点云。根据给定信息生成的点云 观察次数 x值的平均值, y值的平均值, x值的标准偏差, y值的标准偏差, 和相关系数。 我觉得类似的东西可能存在于python中,但是如果没有,我该如何写这样的东西?我熟悉python,只是学习R。
答案 0 :(得分:1)
这使用np.random.multivariate_normal
生成值,所有其他内容只是将均值和标准差转换为适当的协方差矩阵
import matplotlib.pyplot as plt
import numpy as np
mean_x = 2
mean_y = 1
std_x = 2
std_y = 5
correlation = 0.7
covariance = correlation * std_y * std_x
cov = [[std_x**2,covariance],[covariance,std_y**2]]
x, y = np.random.multivariate_normal([mean_x,mean_y], cov, 5000).T
plt.plot(x, y, 'x')
plt.axis('equal')