উত্তর:
কটাক্ষপাত আছে gls
প্যাকেজ থেকে (সাধারণ লিস্ট স্কোয়ার) nlme
আপনি রিগ্রেশন এর ত্রুটিগুলির জন্য একটি সম্পর্কিত সম্পর্ক প্রোফাইল সেট করতে পারেন, যেমন এআরএমএ, ইত্যাদি:
gls(Y ~ X, correlation=corARMA(p=1,q=1))
এআরএমএ (1,1) ত্রুটির জন্য।
gls()
থেকে ফাংশনটি ছাড়াও nlme
, আপনি এমএলই ব্যবহার arima()
করে stats
প্যাকেজে ফাংশনটিও ব্যবহার করতে পারেন । উভয় ফাংশন সহ এখানে একটি উদাহরণ।
x <- 1:100
e <- 25*arima.sim(model=list(ar=0.3),n=100)
y <- 1 + 2*x + e
###Fit the model using gls()
require(nlme)
(fit1 <- gls(y~x, corr=corAR1(0.5,form=~1)))
Generalized least squares fit by REML
Model: y ~ x
Data: NULL
Log-restricted-likelihood: -443.6371
Coefficients:
(Intercept) x
4.379304 1.957357
Correlation Structure: AR(1)
Formula: ~1
Parameter estimate(s):
Phi
0.3637263
Degrees of freedom: 100 total; 98 residual
Residual standard error: 22.32908
###Fit the model using arima()
(fit2 <- arima(y, xreg=x, order=c(1,0,0)))
Call:
arima(x = y, order = c(1, 0, 0), xreg = x)
Coefficients:
ar1 intercept x
0.3352 4.5052 1.9548
s.e. 0.0960 6.1743 0.1060
sigma^2 estimated as 423.7: log likelihood = -444.4, aic = 896.81
অরিমা () ফাংশনটির সুবিধা হ'ল আপনি অনেক বড় বিভিন্ন এআরএমএ ত্রুটি প্রক্রিয়াটি ফিট করতে পারেন। আপনি যদি পূর্বাভাস প্যাকেজ থেকে অটো.রিমা () ফাংশনটি ব্যবহার করেন তবে আপনি স্বয়ংক্রিয়ভাবে এআরএমএ ত্রুটি সনাক্ত করতে পারবেন:
require(forecast)
fit3 <- auto.arima(y, xreg=x)
arima
বিকল্পটি prais
প্রথম নজরে স্টাটার চেয়ে আরও আলাদা দেখায় , তবে এটি আরও নমনীয় এবং tsdiag
আপনার এআর (1) অনুমানটি আসলে কতটা ফিট করে তার একটি সুন্দর দৃশ্য পেতে আপনিও এটি ব্যবহার করতে পারেন use
প্যাকেজ এনএলএম থেকে ফাংশন জিএলএস ব্যবহার করুন । এখানে উদাহরণ।
##Generate data frame with regressor and AR(1) error. The error term is
## \eps_t=0.3*\eps_{t-1}+v_t
df <- data.frame(x1=rnorm(100), err=filter(rnorm(100)/5,filter=0.3,method="recursive"))
##Create ther response
df$y <- 1 + 2*df$x + df$err
###Fit the model
gls(y~x, data=df, corr=corAR1(0.5,form=~1))
Generalized least squares fit by REML
Model: y ~ x
Data: df
Log-restricted-likelihood: 9.986475
Coefficients:
(Intercept) x
1.040129 2.001884
Correlation Structure: AR(1)
Formula: ~1
Parameter estimate(s):
Phi
0.2686271
Degrees of freedom: 100 total; 98 residual
Residual standard error: 0.2172698
যেহেতু সর্বাধিক সম্ভাবনা ব্যবহার করে মডেল লাগানো হয়েছে আপনাকে প্রারম্ভিক মান সরবরাহ করতে হবে। ডিফল্ট শুরুর মান 0 হয় তবে সর্বদা হিসাবে একত্রিতকরণ নিশ্চিত করার জন্য বেশ কয়েকটি মান চেষ্টা করা ভাল।
যেমন ডঃ জি নির্দেশ করেছেন আপনি অন্যান্য পারস্পরিক সম্পর্ক কাঠামো, যেমন এআরএমএও ব্যবহার করতে পারেন।
মনে রাখবেন যে সাধারণভাবে সর্বনিম্ন স্কোয়ারের অনুমানগুলি সামঞ্জস্যপূর্ণ যদি রিগ্রেশন ত্রুটির কোভারিয়েন্স ম্যাট্রিক্স পরিচয় ম্যাট্রিক্সের একাধিক না হয়, তাই আপনি যদি নির্দিষ্ট কোভারিয়েন্স কাঠামোর সাথে মডেল ফিট করেন, প্রথমে আপনাকে এটি উপযুক্ত কিনা তা পরীক্ষা করা দরকার need
আপনি gls আউটপুট উপর পূর্বাভাস ব্যবহার করতে পারেন। Predict.gls দেখুন। এছাড়াও আপনি পারস্পরিক সম্পর্ক কাঠামোতে "ফর্ম" শব্দটি দ্বারা পর্যবেক্ষণের ক্রম নির্দিষ্ট করতে পারেন। উদাহরণস্বরূপ:
corr=corAR1(form=~1)
নির্দেশ করে যে ডাটাবেলের ক্রমটি তারা টেবিলে থাকে।
corr=corAR1(form=~Year)
আদেশটি ফ্যাক্টর ইয়ারের অন্যতম বলে নির্দেশ করে .. অবশেষে "0.5" মানটি corr=corAR1(0.5,form=~1)?
সাধারণত প্যারামিটারের মান নির্ধারণ করে যা ভেরিয়েন্স স্ট্রাকচারের প্রতিনিধিত্ব করে (ফাই, এআর ক্ষেত্রে, এমএ ক্ষেত্রে থিটা ..) ।)। এটি সেট আপ করা এবং রব হ্যান্ডম্যান যেমন উল্লেখ করেছেন তেমন অপ্টিমাইজেশনের জন্য ব্যবহার করা optionচ্ছিক।