创建一个循环,用于将行转置为R中的单个列

时间:2017-08-01 15:12:20

标签: r loops

我正在尝试将包含6列的数据集转换为具有单列的新数据集。我试图实现一个循环,其中R读取每一行并将其粘贴为一列,下一行粘贴在第一列下面,依此类推,直到我有一个最后一列。 这是我打算做的一个例子:

row1 <- xlsx_in[1,]
  

C1 C2 C3 C4 C5 C6                                    1 0.0293109 0.0303286 0.0321606 0.0327712 0.0333818 0.034196

col1 <- as.data.frame(t(row1))
  

V1   C1 0.0293109   C2 0.0303286   C3 0.0321606   C4 0.0327712   C5 0.0333818   C6 0.0341960

我做了一行。从这一点来说,我不知道如何在循环中执行此操作并将后续行粘贴为此列的新值。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我设法找到了两个解决方案:

  • 这需要花费很多时间才能完成

    new_col <- numeric() for (i in 1:nrow(xlsx_in)) { message("N rows ", i, " of ", nrow(xlsx_in), " ", i/nrow(xlsx_in), "\n") row <- xlsx_in [i, ] col <- as.data.frame(t(row)) new_col <- rbind(new_col, col) }

  • 这个很快

    data <-as.vector(t(as.matrix(xlsx_in)))

    感谢您的帮助!