Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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
嵌套for循环仅迭代最后的条目[r]_R - Fatal编程技术网

嵌套for循环仅迭代最后的条目[r]

嵌套for循环仅迭代最后的条目[r],r,R,我试图从数据帧列表中提取每行32个数据帧。但是,它只迭代两个for循环中的最后一个值。我不确定为什么这不起作用,但也许我应该初始化一个空的数据帧列表,而不仅仅是一个空列表 a <- list() for (z in 1:200){ for (i in 1:32){ a[z] = ListOfDataFrames[[i]][["X"]][[z,1]] } } 根据显示的结构,使用tidyverse的选项将是 library(dplyr) library(purrr) o

我试图从数据帧列表中提取每行32个数据帧。但是,它只迭代两个for循环中的最后一个值。我不确定为什么这不起作用,但也许我应该初始化一个空的数据帧列表,而不仅仅是一个空列表

a <- list()


for (z in 1:200){
  for (i in 1:32){
    a[z] = ListOfDataFrames[[i]][["X"]][[z,1]]
  }
}

根据显示的结构,使用
tidyverse
的选项将是

library(dplyr)
library(purrr)
out <-  map(ListOfDataFrames, ~ pluck(.x, "X") %>%
              group_split(grp = row_number(), keep = FALSE)) %>% 
          transpose %>% 
          map(bind_rows)
-检查

all.equal(out, a, check.attributes = FALSE)
#[1] TRUE
数据
ListOfDataFrames您应该添加一个。
l1 <- nrow(ListOfDataFrames[[1]]$X)
a <- vector('list', l1)
for (z in seq_len(l1)){
  for (i in seq_along(ListOfDataFrames)){
    a[[z]] = rbind(a[[z]], ListOfDataFrames[[i]][["X"]][z,])
  }
}
all.equal(out, a, check.attributes = FALSE)
#[1] TRUE
ListOfDataFrames <- list(list(X = structure(list(col1 = 1:6, col2 = 7:12), class = "data.frame", row.names = c(NA, 
-6L)), Y = 1:7), list(X = structure(list(col1 = 1:6, col2 = 7:12), class = "data.frame", row.names = c(NA, 
-6L)), Y = 1:7), list(X = structure(list(col1 = 1:6, col2 = 7:12), class = "data.frame", row.names = c(NA, 
-6L)), Y = 1:7), list(X = structure(list(col1 = 1:6, col2 = 7:12), class = "data.frame", row.names = c(NA, 
-6L)), Y = 1:7), list(X = structure(list(col1 = 1:6, col2 = 7:12), class = "data.frame", row.names = c(NA, 
-6L)), Y = 1:7))