Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于名称有条件地将rbind或bind_行应用于列表_R - Fatal编程技术网

基于名称有条件地将rbind或bind_行应用于列表

基于名称有条件地将rbind或bind_行应用于列表,r,R,给出如下所示的data.frame列表: list_dfs[1]“a”“b”“a”“c” 如何通过列表中data.frame的名称应用函数?具体地说,我想rbind将本例中称为a的data.frames绑定在一起,这样生成的列表只有三个元素。如果我把它们都绑起来,我会这样做: do.call(rbind,list\u dfs) #>rbind(deparse.level,…)中出错:参数的列数不匹配 显然,这是行不通的。如果列不匹配,则此操作不起作用 list\u mtcars我们可以使用b

给出如下所示的data.frame列表:

list_dfs[1]“a”“b”“a”“c”
如何通过列表中data.frame的名称应用函数?具体地说,我想
rbind
将本例中称为
a
的data.frames绑定在一起,这样生成的列表只有三个元素。如果我把它们都绑起来,我会这样做:

do.call(rbind,list\u dfs)
#>rbind(deparse.level,…)中出错:参数的列数不匹配
显然,这是行不通的。如果列不匹配,则此操作不起作用


list\u mtcars我们可以使用
bind\u rows
list
按列表的
名称进行拆分

library(dplyr)
library(purrr)
split(list_dfs, names(list_dfs)) %>%
   map(bind_rows)

或在
base R

lapply(split(list_dfs, names(list_dfs)), function(dat) do.call(rbind, unname(dat)))

我可能解释不清楚。这将绑定列表中的每个元素。我只想绑定那些同名的。永远忘记拆分!谢谢