2015-02-10 79 views
0

p(i,x)=a0,i+a1,icos(2π/T*x)+b1,isin(2π/T*x)+c1,ix如何,使用R

在哪里写这个方程函数:

T=365a0,ia1,ib1,ic1,i是参数和x是唯一的价值,我们的输入。

我很困惑,如何写功能,而不当参数未知

回答

1

你刚才写的函数一般

p_gernal <- function(x, a0, a1, b1, c1, t){ 
    a0 + a1 * cos(2*pi/t * x) + b1 * sin(2*pi/t * x) + c1 * x 
} 

[RX,A0 ,a1,b1,c1参数应该是相同长度的向量 或长度1

head(p_gernal(x = x, a0 = a0, a1 = a1, b1 = b1, c1 = c1, 365)) 
[1] 0.0000000000 0.0205558610 0.0000614598 0.0866477574 0.0137448690 

因此,对于一个固定的指数

p_i <- function(x){ 
    p_gernal(x = x, a0 = 0, a1 = 1, b1 = 2, c1 = 3, 365) 
} 
> p_i(1:5) 
[1] 4.034279 7.068251 10.101906 13.135235 16.168228 
+0

你的参数被命名为't',但你把它作为'T'。 – 2015-02-10 21:12:55

+0

THX,只是修好了 – Rentrop 2015-02-10 21:13:44