সময়ের সাথে মিথস্ক্রিয়া অন্তর্ভুক্ত স্থির-প্রতিক্রিয়া মডেলগুলি অনুমান করতে আর এবং প্লাম ব্যবহার করে


16

আমি plm()ফর্মটির স্থির প্রভাবগুলির মডেলগুলি অনুমান করতে ব্যবহার করছি

y ~ x + time + time:fixed_trait

যেখানে fixed_traitএকটি পরিবর্তনশীল যা ব্যক্তি জুড়ে পরিবর্তিত হয় তবে ব্যক্তিদের মধ্যে স্থির থাকে।

আলাপচারিতার বিন্দু timeসঙ্গে fixed_traitপ্রভাব অনুমতি হয় fixed_traitসময় জুড়ে তারতম্য। (আমি পল অ্যালিসনের সাম্প্রতিক প্রভাবগুলির সাম্প্রতিক পুস্তিকা থেকে এখানে কাজ করছি C উদ্ধৃতি সংযোজন।)

plm()এই জাতীয় মডেলগুলির সহগ এবং মান ত্রুটিগুলি অনুমান করতে কোনও সমস্যা নেই has তবে summary.plm()এই মডেলগুলির জন্য আর ^ 2 গণনা করতে পারে না। এই সমস্যাটি আমি ঠিক করতে চাই।

এখানে একটি ন্যূনতম উদাহরণ:

library(plm)
tmp <- data.frame(ID=rep(1:3, 2), year=rep(0:1, each=3), 
                  y=rnorm(6), const=rep(1:3, 2))
fe1 <- plm(y ~ year,              index=c('ID', 'year'), data=tmp)
fe2 <- plm(y ~ year + year:const, index=c('ID', 'year'), data=tmp)
summary(fe1)  # works fine
summary(fe2)  # Error in crossprod(t(X), beta) : non-conformable arguments

মধ্যে ডেলিভেশন plm:::summary.plmসমস্যা আরও স্পষ্ট করে তোলে। আর ^ 2 গণনা করতে, এটি plmকরার চেষ্টা করে:

beta <- coef(fe2)
X <- model.matrix(fe2)
crossprod(t(X), beta)

কাজ করে না, কারণ betaশুধুমাত্র অনুমান অন্তর্ভুক্ত year1এবং year0:constযখন Xএছাড়াও একটি কলাম রয়েছে year1:const। অন্য কথায়, Xউভয় year0:constএবং এর জন্য কলাম অন্তর্ভুক্ত করে year1:constএবং এই দুটি সহগের অনুমান করা অসম্ভব।

সূত্রের মধ্যে প্রবেশের আগে "হাত ধরে" মিথস্ক্রিয়া শব্দটি তৈরি করা একটি কার্যপ্রণালী:

tmp$yearXconst <- tmp$year*tmp$const
fe3 <- plm(y ~ year + yearXconst, index=c('ID', 'year'), data=tmp)
summary(fe3)  # works fine

তবে এটি জটিল। এর সংক্ষেপে, summary.plmএমন মডেলগুলির সাথে কাজ করার জন্য আমি কি কিছু করতে পারি ?

===

অ্যালিসন, পল ডি 2009. স্থির প্রতিক্রিয়া রিগ্রেশন মডেল। লস অ্যাঞ্জেলেস, সিএ: সেজ। বিশেষত পৃষ্ঠাগুলি দেখুন 19-21।


1
সঙ্গে প্রারম্ভকালীন plmসংস্করণ 1.6-4, এই একটি সমস্যা আর যেমন alised কোফিসিয়েন্টস কেবল বাদ করা হয়।
হেলিক্স 123

উত্তর:


9

ব্যবহার করার চেষ্টা করুন

fe3 <- plm(y ~ year * const, index = c('ID', 'year'), data = tmp)

পরিবর্তে. এটি *ইন্টারঅ্যাকশনে সময় নির্ধারিত প্রভাবগুলিকে অতিরিক্তভাবে অন্তর্ভুক্ত করা সত্ত্বেও এটি কাজ করে (কারণ সময়টি কার্যকর প্রভাব-সম্পাদিত হচ্ছে):

fe4 <- plm(y ~ year * const, index = c('ID', 'year'), data = tmp, effect = "twoway")

*পরিবর্তে যেটি ব্যবহার করতে হবে তা প্রদত্ত :, অ-মিথস্ক্রিয় সহগের আউটপুট দমন করার কোনও উপায় আছে?
আর্থার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.