私は以下のシミュレーションと評価のためにこれらのRコードを書いています。次のようにエラー:オブジェクト 'mle.result'が見つかりません
library(numDeriv)
library(Matrix)
library(LambertW)
alpha=3.5
beta=2.0
theta=0.5
lambda=4.0
n=50
#Generate a random variable from uniform distribution
u<-0
u=seq(0,0.99,0.01)
for (q in 1:n)
{
x[q]<- (lambda/beta)*
W((((beta/lambda^2)*log(1-theta*u[q]/(1-u[q]))*
exp(beta/lambda)))^(1/alpha),branch = 0)
}
BXIIWG_LL <- function(par){
-sum(log(par[1]*par[2]*x^(par[2]-1)*(1+x)+
par[3]*par[2]*x^(par[2]-1))*(1-par[4])*(1+x^par[2])^(-par[3]-1)*
exp(-par[1]*x^par[2])/(1-par[4]
(1+x^par[2])^(-par[3])*exp(-par[1]*x^par[2]))^(2))
#Maximum likelihood estimation
mle.result <- nlminb(c(alpha,beta,theta,lambda),
BXIIWG_LL,lower=0,upper=Inf)
私が得た結果は以下のとおりです。
(1) Error: object 'mle.result' not found.
(2) warnings: In W((((beta/lambda^2) * log(1 - theta * u[q]/(1 - u[q])) : Some values of (((beta/lambda^2) * log(1 - theta * u[q]/(1 - u[q])) * exp(beta/lambda)))^(1/alpha) are NA or NaN. Returning 'NA' for these entries.
どのように私はこれらの問題を解決するのですか?
私はあなたのコードを実行したときに、私が取得する前に限り 'for'ループとして取得します'エラー:オブジェクト 'x'が見つかりません。 'x'の定義を含めるようにコードを編集してください... –