如何在r中循环多个数据帧以创建向量?

时间:2017-06-14 15:48:49

标签: r

这是我目前用于将数据从多个数据帧移动到时间排序向量中的代码,然后我将对其进行分析和图表:

TotalLoans <- c(
  sum(as.numeric(HCD2001$loans_all)), sum(as.numeric(HCD2002$loans_all)),
  sum(as.numeric(HCD2003$loans_all)), sum(as.numeric(HCD2004$loans_all)),
  sum(as.numeric(HCD2005$loans_all)), sum(as.numeric(HCD2006$loans_all)),
  sum(as.numeric(HCD2007$loans_all)), sum(as.numeric(HCD2008$loans_all)),
  sum(as.numeric(HCD2009$loans_all)), sum(as.numeric(HCD2010$loans_all)),
  sum(as.numeric(HCD2011$loans_all)), sum(as.numeric(HCD2012$loans_all)),
  sum(as.numeric(HCD2013$loans_all)), sum(as.numeric(HCD2014$loans_all)),
  sum(as.numeric(HCD2015$loans_all)), sum(as.numeric(HCD2016$loans_all))
)

我使用类似的数据框执行此操作四次,其格式类似于:

Varname$year

有没有办法循环遍历这16个数据框,选择一个单独的列,对其执行一个函数,并将其放入一个向量中?这是我到目前为止所尝试的:

AllList <- list(HCD2001, HCD2002, HCD2003, HCD2004, HCD2005, HCD2006, HCD2007, HCD2008, HCD2009, HCD2010, HCD2011, HCD2012, HCD2013, HCD2014, HCD2015, HCD2016)    

TotalLoans <- lapply(AllList,
                function(df){
                  sum(as.numeric(df$loans_all))
                  return(df)
                }
              )

但是,它会从数据框中的每一列返回一个大型列表。与此相关的所有其他帖子都是用于修改数据帧,而不是创建具有修改的数据帧值的新向量。

0 个答案:

没有答案