9

我对整个 R 事物还是很陌生。

我有以下目标;我有一个正弦函数,可以描述随时间变化的钙粒子数:类似于 y = a * sin (b*t) + c

由于实际上钙的产生和去除是在随机事件中描述的,我想在我的函数中添加一个随机噪声项(最好在平均噪声幅度上进行扩展)。

像 z = y + random*Amplitude

你能帮我吗?

最好的

4

2 回答 2

17

这是我将使用的一种方法 - 我提供了两个关于如何生成错误的选项(均匀分布与高斯分布):

### Equation: y=a*sin(b*t)+c.unif*amp
# variables
n <- 100 # number of data points
t <- seq(0,4*pi,,100)
a <- 3
b <- 2
c.unif <- runif(n)
c.norm <- rnorm(n)
amp <- 2

# generate data and calculate "y"
set.seed(1)
y1 <- a*sin(b*t)+c.unif*amp # uniform error
y2 <- a*sin(b*t)+c.norm*amp # Gaussian/normal error

# plot results
plot(t, y1, t="l", ylim=range(y1,y2)*c(1,1.2))
lines(t, y2, col=2)
legend("top", legend=c("y1", "y2"), col=1:2, lty=1, ncol=2, bty="n")

在此处输入图像描述

于 2015-08-20T07:56:37.217 回答
2

y <- jitter(a*sin(b*t) + c)使用该jitter()函数将为您的函数添加随机噪声。您可以在 jitter() 中指定“数量”参数来控制幅度。

于 2015-08-20T07:29:37.303 回答