繁体   English   中英

numpy从线性函数生成数据

[英]numpy generate data from linear function

假设我想从线性函数生成100个左右的数据点,那么最好的方法是什么?

线性函数的示例y = 0.4*x + 3 + delta

其中delta是从-10和+10之间的均匀分布中抽取的随机值

我希望为每个数据点生成delta,以对数据进行一些扰动。

import numpy as np

d = np.random.uniform(-10, 10)

这似乎符合三角洲的法案,虽然我不确定如何产生其余的纳入这个。

我不知道你想如何生成x,但这会起作用:

In [7]: x = np.arange(100)

In [8]: delta = np.random.uniform(-10,10, size=(100,))

In [9]: y = .4 * x +3 + delta

在此输入图像描述

这完全取决于您想要评估函数的x值。 假设你想从-50到50绘制,只需使用x = np.arange(-50,50)但是你需要d = np.random.uniform(-10, 10, x.size)

然后运行你的函数: y = 0.4*x + 3 + delta

另一方面,如果你想要一个线性间隔的x你也可以使用np.linspace或对数间隔xnp.logspace

最后它看起来像:

x = np.linspace(0, 100, 1000) # 1000 values between 0 and 100
# x = np.arange(-50, 50) # -50, -49, ... 49, 50
delta = np.random.uniform(-10, 10, x.size)
y = 0.4*x + 3 + delta

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM