我有这样的数据
df<- structure(list(X1 = structure(c(6L, 4L, 5L, 3L, 1L, 2L), .Label = c(">sp1",
"CQLSKG", "KLALQLHP", "MVEAI", "SV=1", "SV=2"), class = "factor")), class = "data.frame", row.names = c(NA,
-6L))
我想要这样的输出。因此,第一行保持不变,然后第二行位于下一列的第一行之前。然后每行都排在最前面
X1 X2
1 SV=2 MVEAI
2 SV=1 KLALQLHP
3 >sp1 CQLSKG
答案 0 :(得分:3)
这将起作用
data.frame(X1 = unlist(df)[c(TRUE,FALSE)], X2 = unlist(df)[!c(TRUE,FALSE)])
X1 X2
X11 SV=2 MVEAI
X13 SV=1 KLALQLHP
X15 >sp1 CQLSKG
答案 1 :(得分:1)
您可以尝试:
data.frame(t(matrix(unlist(df), 2)))
X1 X2
1 SV=2 MVEAI
2 SV=1 KLALQLHP
3 >sp1 CQLSKG