计算面板数据R中的平均值

计算面板数据R中的平均值,r,average,panel,panel-data,R,Average,Panel,Panel Data,我对R很陌生。 我有不平衡的面板数据。BvD_ID_Number是每个公司的识别号,TotalAsset是每个时期(年度)资产负债表中总资产的价值。 这里是一个概述() 我想,对于每个BvD_ID_数字,计算整个可用时间窗口的TotalAsset的平均值 我使用了此代码,但效果不好() 库(dplyr) df% 分组依据(p_TotalAsset1$BvD_ID_编号)%>% 变异(TotalAsset\u Avegage=四舍五入(平均值(p\u TotalAsset1$TotalAsset)

我对R很陌生。 我有不平衡的面板数据。BvD_ID_Number是每个公司的识别号,TotalAsset是每个时期(年度)资产负债表中总资产的价值。 这里是一个概述()

我想,对于每个BvD_ID_数字,计算整个可用时间窗口的TotalAsset的平均值

我使用了此代码,但效果不好()

库(dplyr)
df%
分组依据(p_TotalAsset1$BvD_ID_编号)%>%
变异(TotalAsset\u Avegage=四舍五入(平均值(p\u TotalAsset1$TotalAsset)))

谢谢你的帮助。

你可以使用
总结
变异

使用
summary
将完全聚合您的数据,仅提供分组变量(每个公司的ID号)和平均值

df %>% 
  group_by(BvD_ID_Number) %>% 
  summarize(TotalAsset_Average = round(mean(TotalAsset),0))
这给了我们:

  BvD_ID_Number TotalAsset_Average
  <chr>                      <dbl>
1 FR810911719                1697 
2 GBFC024701               124191 
3 GBFC032748                 6318.
4 GBFC32536                 72912 
5 GBFC32699                 92878.
# A tibble: 10 x 4
# Groups:   BvD_ID_Number [5]
   BvD_ID_Number  Year TotalAsset TotalAsset_Average
   <chr>         <dbl>      <dbl>              <dbl>
 1 FR810911719    2017       2220               1697
 2 FR810911719    2016       1174               1697
 3 GBFC024701     2018     124726             124191
 4 GBFC024701     2017     126010             124191
 5 GBFC024701     2016     121837             124191
 6 GBFC32536      2017      72912              72912
 7 GBFC32699      2016     111298              92878
 8 GBFC32699      2015      74457              92878
 9 GBFC032748     2017       6579               6318
10 GBFC032748     2016       6056               6318
这给了我们:

  BvD_ID_Number TotalAsset_Average
  <chr>                      <dbl>
1 FR810911719                1697 
2 GBFC024701               124191 
3 GBFC032748                 6318.
4 GBFC32536                 72912 
5 GBFC32699                 92878.
# A tibble: 10 x 4
# Groups:   BvD_ID_Number [5]
   BvD_ID_Number  Year TotalAsset TotalAsset_Average
   <chr>         <dbl>      <dbl>              <dbl>
 1 FR810911719    2017       2220               1697
 2 FR810911719    2016       1174               1697
 3 GBFC024701     2018     124726             124191
 4 GBFC024701     2017     126010             124191
 5 GBFC024701     2016     121837             124191
 6 GBFC32536      2017      72912              72912
 7 GBFC32699      2016     111298              92878
 8 GBFC32699      2015      74457              92878
 9 GBFC032748     2017       6579               6318
10 GBFC032748     2016       6056               6318
谢谢@Matt,我在“分组人”之前加上了“选择(BvD_ID_编号,TotalAsset,年份)%>%”,效果很好
structure(list(BvD_ID_Number = c("FR810911719", "FR810911719", 
"GBFC024701", "GBFC024701", "GBFC024701", "GBFC32536", "GBFC32699", 
"GBFC32699", "GBFC032748", "GBFC032748"), Year = c(2017, 2016, 
2018, 2017, 2016, 2017, 2016, 2015, 2017, 2016), TotalAsset = c(2220, 
1174, 124726, 126010, 121837, 72912, 111298, 74457, 6579, 6056
)), row.names = c(NA, -10L), class = c("tbl_df", "tbl", "data.frame"
))