如何根据R

时间:2016-12-01 09:25:49

标签: r missing-data rate panel-data

我有几个银行的面板数据集,每个银行从1997年到2015年,年度观察数据为:

CODE      COUNTRY      YEAR      LOANS_NET      ...other variables
671405      AT         1997       39028938
671405      AT         1998       41033237
671405      AT         1999       35735062
...
...
671405      AT         2015      130701872
...
30885R      DE         2004      200024673
...
...

使用R,我需要计算另外两列:

1)1年期间的LOANS_NET增长率

2)3年期间的LOANS_NET增长率,一旦计算,必须按年​​计算。

例如:

Loan Growth 3-year = [Bank's(i) LOANS_NET Year(t) / Bank's(i) LOANS_NET Year(t-3)] -1

nb:数据包含大量缺失值,代码必须考虑该问题! :)

1 个答案:

答案 0 :(得分:2)

@Dan您使用任何套餐吗?我建议您使用zoo和data.table包并按以下方式转换日期:

DT[, YearNumeric := as.numeric(YEAR)]
DT[, PreviousYearLoanNet := .SD[match(YearNumeric - 1, .SD$YearNumeric), LOANS_NET], by=CODE]

在此处,您创建一个包含先前( - 1年)贷款值的列。然后创建一个包含增长的新列:

DT[,Growth1Y:= (YEARLOANNET- PreviousYearLoanNet)/PreviousYearLoanNet]

然后你做任何你想做的事:)干杯!