我有一个表list_table_Tanzania
的列表,我希望将其转换为矩阵列表list_matrix_Tanzania
。我试图运行这个for loop
函数,但我只得到一个输出。
for (i in 1:length(list_table_Tanzania)) {
list_matrix_Tanzania<-as.matrix(list_table_Tanzania[[i]], rownames.force = NA)
}
有人知道如何在列表中获得相同数量的表格数量?
答案 0 :(得分:1)
您在每次迭代中覆盖list_matrix_Tanzania
的值。
尝试使用lapply
list_matrix_Tanzania <- lapply(list_table_Tanzania, as.matrix, rownames.force = NA)
也可以使用for循环执行它,首先必须按list_matrix_Tanzania <- vector("list", length(list_table_Tanzania)
初始化列表,然后在for循环中将第i次迭代的结果赋给list_matrix_Tanzania[[i]]
编辑要从lapply
结果中删除某些列,您可以将其修改为类似
list_matrix_Tanzania <- lapply(list_table_Tanzania, function(d) {
result <- as.matrix(d, rownames.force = NA)
v <- 1:2 # Replace this with the indices of the columns you wish to remove
result[, -v]
})