r - 使用循环将多个矩阵转换为数据帧
问题描述
我正在尝试编写一个循环,该循环采用多个 1x2 矩阵,添加列名并将它们转换为表。
我的矩阵如下所示:
Floor4 <- matrix(c(167, 168, 170, 177,178,179, 180, 335, 336, 343, 344, 353, 489, 490, 498, 501, 502, 45,44,45,45,46,46,44,46,46,44,46,46,45,45,45,45,45), ncol = 2, byrow = F)
我将它们连接成这样的列表:
floor_list <- list(Floor2, Floor3, Floor4)
我想编写一个附加列名的for循环,然后将对象转换为表,如下所示:
for (i in floor_list) {
colnames(i) <- c("Flight", "Total")
i <- as.table(i)
}
任何帮助,将不胜感激。
解决方案
我对你的代码做了一些修改。我使用包data.table
来获取表格。然后我更改了每个表的输出名称:
x = 0
for (i in floor_list) {
colnames(i) <- c("Flight", "Total")
out <- as.data.table(i)
assign(paste("Table",x,sep = "_"), out)
x <- x + 1
}
这不漂亮,但它正在工作