计算平均发动机预期寿命之间的比率

Calculating the ratio between the average engine life expectancies

我在下面有一个小型 R 数据框,其中包含 2006 年至 2008 年在日本和墨西哥制造的汽车。我需要计算每年日本和墨西哥制造的汽车的平均发动机寿命之间的比率。我正在使用 dplyr,到目前为止我已经能够按年份和地点分组。

但是我卡在了这部分。知道如何计算每年日本和墨西哥制造的汽车的平均发动机寿命之间的比率吗?

这是我使用的代码:

cars_df %>%
    group_by(year_built, place_built) %>%
    summarise(car,year_built,place_built, 
               avg_life_exp = mean(engine_life_expectancy))

创建 'engine_life_expectancy' 后,执行 mutatesummarise 默认删除最后一个分组列。所以,现在,它按 'year_built' 分组,因此我们可以将 'avg_life_exp' 的 first 元素除以 last 或第二个

library(dplyr)
cars_df %>%
     group_by(car, year_built, place_built) %>%  
     summarise(avg_life_exp = mean(engine_life_expectancy)) %>%
     mutate(ratio = first(avg_life_exp)/last(avg_life_exp)) 

注意:不是在 summarise 中指定 'car'(因为新版本的 summarise 可以为每个组 return 多行),我们可以包括'car' 也作为分组列