我用它来估计 19 年数据的累积扩散模式。 (专业体育场馆中的可再生能源扩散)。我的问题围绕着 Satoh (2001) 模型中的指数 (t/2)。当我将两项都提高到 (t) 而不是使用 t/2 时,我得到了更好的估计。 (我的数据点每年测量一次,因此当 delta 等于 1 时,n/2 变为 t/2)。我有两种不同方法的数据以及下面的输出。任何帮助将不胜感激! (要么证明在指数中使用 t 是合理的,要么指出我误认为 t/2 的地方。)
Data<-c(1,1,1,1,6,13,17,20,28,37,40,44,48,55,63,68,75,79,86)
T119=1:19
#This is the estimation WITHOUT t/2 in the exponent. Market is preset to the number of facilities (175)
Bass.nlsENV<-nls(Data~175*((1-((1-(q+p))/(1+(q+p)))^(T119)/(1+(q/p)*((1-(q+p))/(1+(q+p)))^(T119)))), data=Data, start=list(p=.0001, q=.025))
summary(Bass.nlsENV)
Bcoef <- coef(Bass.nlsENV)
p <- Bcoef[1]
q <- Bcoef[2]
bassModelCUMENV<-function(p,q,T=100)
{
D=double(T)
for(t in 1:T)
D[t] = 175*((1-((1-(q+p))/(1+(q+p)))^(t))/(1+(q/p)*((1-(q+p))/(1+(q+p)))^(t)))
return(D)
}
#Fitting the function to the data
Spred=bassModelCUMENV(p,q,T=50)
#Generating time series variables and plot
Spred=ts(Spred,start=c(2003,1),freq=1)
ENVAdopters=ts(Data$FACILITYCumu,start=c(2003,1),freq=1)
ts.plot(ENVAdopters,Spred,col=c("red","black"), xlab="Year", ylab="Number of Adopters")
#This is the estimation WITH t/2 in the exponent
Bass.nlsENVn2<-nls(Data$FACILITYCumu~175*((1-((1-(q+p))/(1+(q+p)))^(T119/2)/(1+(q/p)*((1-(q+p))/(1+(q+p)))^(T119/2)))), data=Data, start=list(p=.001, q=.025))
summary(Bass.nlsENVn2)
Bcoef <- coef(Bass.nlsENVn2)
p <- Bcoef[1]
q <- Bcoef[2]
bassModelCUMENVn2<-function(p,q,T=100)
{
D=double(T)
for(t in 1:T)
D[t] = 175*((1-((1-(q+p))/(1+(q+p)))^(t/2))/(1+(q/p)*((1-(q+p))/(1+(q+p)))^(t/2)))
return(D)
}
#Fitting the function to the data
Spredn2=bassModelCUMENVn2(p,q,T=50)
#Generating time series variables and plot
Spredn2=ts(Spredn2,start=c(2003,1),freq=1)
ENVAdopters=ts(Data$FACILITYCumu,start=c(2003,1),freq=1)
ts.plot(ENVAdopters,Spredn2,col=c("red","black"), xlab="Year", ylab="Number of Adopters")
很明显,t 指数估计优于 t/2,包括现有数据的较小 RSE。然而,该等式表明 t/2。我错过了什么?谢谢你的帮助!