R 手动生成交互术语
我正试图使用R 手动生成交互术语,r,panel-data,R,Panel Data,我正试图使用plm估算一个固定效果面板,该面板具有特定的时间趋势,并且遇到了与之相同的问题。我非常愿意使用链接交叉验证问题中描述的解决方法,但无法确定如何生成必要的数据帧列 也就是说,我有一个数据框的形式 data.frame(date=rep(1:5,times=3),id=rep(1:3,each=5)) 并且希望在此数据框中为每个名为date\u idX的id添加一列,对于id==X的所有观测值,其值与date相同,否则为零 当然,对于我的问题,任何更优雅的解决方案都将不胜感激 >
plm
估算一个固定效果面板,该面板具有特定的时间趋势,并且遇到了与之相同的问题。我非常愿意使用链接交叉验证问题中描述的解决方法,但无法确定如何生成必要的数据帧列
也就是说,我有一个数据框的形式
data.frame(date=rep(1:5,times=3),id=rep(1:3,each=5))
并且希望在此数据框中为每个名为date\u idX
的id
添加一列,对于id==X
的所有观测值,其值与date
相同,否则为零
当然,对于我的问题,任何更优雅的解决方案都将不胜感激
> dfrm <- data.frame(date=rep(1:5,times=3),id=rep(1:3,each=5))
>
> X <-3; dfrm$time_idX <- dfrm$date*(dfrm$id==X)
> dfrm
date id time_idX
1 1 1 0
2 2 1 0
3 3 1 0
4 4 1 0
5 5 1 0
6 1 2 0
7 2 2 0
8 3 2 0
9 4 2 0
10 5 2 0
11 1 3 1
12 2 3 2
13 3 3 3
14 4 3 4
15 5 3 5
我不能保证这将是使用plm问题的正确解决方案,但这是一种应该与普通回归一起使用的方法。您应该编辑您的问题以包含适当的测试用例。您的意思是与“日期”相同的值吗?似乎我在问题中没有说得足够清楚:我尝试简单地将
date*id
放入公式中,但由于链接交叉验证问题中提到的原因,这在plm
中不起作用。建议的解决方法是手动创建这些特定的时间趋势,然后将它们添加到公式中。因为我有大约300个人,我需要300个变量,每个变量都包含一个时间趋势。因此,date\u idX
应该代表所有的date\u id1
,date\u id2
,date\u id3
等等。实际上,我没有提到我理解为date*id的术语。我看到了一个类似于y~date+date:id的模型。我的建议是用,假设4个人和5个时间段,使用更易于管理的“试验台”。然后你可以工作到300。econ和mixed effects主题都有R-SIG邮件列表。
regfun( form = yield ~ I(date*(id==X) ), data=dfrm)