如何使用带有 mutate() 的 for 循环来计算使用 WorldPhones 数据集的 R 中每年电话号码的增长?

问题描述 投票:0回答:0

使用 for 循环 结合 mutate() 函数来确定 R 中每年使用的电话数量的增长,使用 WorldPhones 数据集。

我知道可能有更简洁的方法来获取此信息,但这是 uni 实用的一部分,我必须使用函数和循环。

在这里,我在加载数据集后设置了我的数据框:

library(tidyverse)
WorldPhones <- datasets::WorldPhones

WorldPhones_df <- as.data.frame(WorldPhones)
WorldPhones_df <- WorldPhones_df %>% 
  mutate(Year = rownames(WorldPhones_df))

WorldPhones_df <- WorldPhones_df %>% 
  gather(key = "Region", value = "Phones", 1:7)
WorldPhones_df

WPSumByYear <- WorldPhones_df %>% group_by(Year) %>% summarise(sum(Phones))

直到这里一切顺利,但我正在努力将它放入一个 for 循环中,该循环还使用 mutate 函数来衡量每年的增长。

我尝试了什么:

growths <- c(0)
for (i in 2:length(sa_df$Year)){
  growth <- (WPSumByYear$Phones[i-1]- WPSumByYear$Phones[i])
  growths <- c(growths, growth)
}

任何建议表示赞赏!

r for-loop mutate
© www.soinside.com 2019 - 2024. All rights reserved.