【发布时间】:2018-12-10 08:49:05
【问题描述】:
我有一个如下所示的面板数据集
ID Model Month Country Activations avg_price
1 VW Golf 2012-01 NL 23 5000
1 VW Golf 2012-02 NL 2 5500
1 VW Golf 2012-01 FR 8 6000
1 VW Golf 2012-02 FR 34 7000
2 Audi TT 2012-01 NL 8 6900
现在,我想首先对 Activations 和 avg_price 变量进行区分。我使用plm 包中的diff(data$Activations) 函数执行此操作,但首先我必须使用pdata.frame(data) 转换数据框。所以:
data_fd = pdata.frame(data)
data_fd$Activations = diff(data_fdactivations)
使用上述数据返回以下错误:duplicate couples (id-time) in resulting pdata.frame。这是因为我有不同国家/地区的数据,当我汇总所有国家/地区的数据时(总共Activations 和avg_price,只有一个 id-month 组合),效果很好。但是,我现在也想使用 Country 变量来获取第一个差异。
然后,我的数据框应该如下所示:
ID Model Month Country Activations avg_price
1 VW Golf 2012-01 NL NA NA
1 VW Golf 2012-02 NL -21 500
1 VW Golf 2012-01 FR NA NA
1 VW Golf 2012-02 FR 26 1000
etc
有谁知道我如何做到这一点?
【问题讨论】: