在多个列表元素上应用一组指令

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

我有一些代码从目录中读取所有xlsx,将其作为列表导入RStudio,并使用文件名命名列表的每个元素。每个元素都存储为数据帧。

我是R的新手,但是对列表的每个元素应用一组函数最明智的方法是什么?每个数据帧的布局都相同。

我想过滤到特定区域,按年龄分组,然后将此信息作为新数据帧提取(绑定行)。

..$ Persons            :'data.frame':   1932 obs. of  36 variables:
  .. ..$ gss_code_borough: chr [1:1932]  ...
  .. ..$ gss_code_ward   : chr [1:1932]  ...
  .. ..$ district        : chr [1:1932]  ...
  .. ..$ ward_name       : chr [1:1932] ...
  .. ..$ age             : chr [1:1932] "total" "0" "1" "2" ...
  .. ..$ 2011            : num [1:1932] 261590 4779 4480 4320 4197 ...
  .. ..$ 2012            : num [1:1932] 263856 4723 4571 4390 4082 ...

上面显示了列表的第一个元素的布局。我想按特定区域过滤所有表格,细分到特定年龄范围和总和。我可以编写代码6次,每次更改列表元素,但必须有更快的方法吗?

r
1个回答
0
投票

让我们假设你有一个名为dta的列表,其中有许多data.frame,它们具有你给出的结构。你可能需要purrr包来帮助这个。

library(purrr)
map_df(dta, ~.x %>% filter(district == "a1", age == "2"), .id = "dataset")
© www.soinside.com 2019 - 2024. All rights reserved.