如何在Python中生成一个异方差模型?

2024-06-06 16:39:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望使用Numpy在Python中创建异性数据。在

bias=100
N=10
X = np.arange(1,N,0.2).reshape(-1,1)
y_true = np.ravel(X.dot(0.3) + bias)
noise = np.random.normal(0, 1, (N-1)*5)
y = y_true + noise

我需要噪声中的每一个元素都来自正态分布,具有不同的异方差。理想情况下,方差必须是相应值X的函数。如何确保这一点?np.随机.正态只接受标量方差项。在


Tags: 数据numpytruenprandom噪声dotnormal
1条回答
网友
1楼 · 发布于 2024-06-06 16:39:06

来自help(np.random.normal)

normal(...) method of mtrand.RandomState instance
normal(loc=0.0, scale=1.0, size=None)
...
scale : float or array_like of floats
Standard deviation (spread or "width") of the distribution.

因此,np.random.normal接受一个方差项数组,如果需要的话。以下是10个随机样本的例子,平均值为0,标准差逐渐增大:

^{1}$

这是一个二维数组,每个分布中有10000个样本及其标准偏差:

^{pr2}$

相关问题 更多 >