dplyr子集中的延迟函数用法

时间:2019-03-28 02:44:09

标签: r

我的基本目标是对数据集进行子集化,并汇总使用滞后函数的新列。我了解如何对数据集进行子集化,但是我在使用数据集内的滞后函数时却很努力,这给我带来了麻烦。

我已经尝试了几种不同的方法来实现它,但是没有成功。

gapminder %>%
  na.omit() %>%
  group_by(country) %>%
  summarise(prevPeriod = lag(year),
            lifeExpGrowth = lag(lifeExp),
            popGrowth = lag(pop),
            gdppcGrowth = 100*(gdpPercap/lag(gdpPercap) - 1)))

我目前正在让我的代码根据国家(而不是年份)进行延迟。 gdppcGrowth应该也返回一个百分比,但我遇到了错误;

Column `gdppcGrowth` must be length 1 (a summary value), not 12

对于每个功能,我都希望按国家/地区分析数据,重点是增长率。我想使用lag(x)函数访问序列或向量的先前值,以便100 *(x / lag(x)-1)计算以百分比表示的x的标准(算术)增长率。

0 个答案:

没有答案