在每第3列之后拆分一行,并将这3列作为r中的新行传输

Tob*_*ias 6 split r col dataframe

我有一个数据框,这是另一个命令的结果.此数据框只有一行,大约有40000个条目.我的问题是3列是一组连接的数据.因此,我想在每第三列之后拆分行,并将其作为新行传输.例:

创建测试数据框:

df=as.data.frame(matrix(seq(1:12), ncol=12, nrow=1))
Run Code Online (Sandbox Code Playgroud)

现在我有一个看起来像这样的数据框.

V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12
1  2  3  4  5  6  7  8  9  10  11  12
Run Code Online (Sandbox Code Playgroud)

但我需要这样:

V1 V2 V3
1  2  3
4  5  6
7  8  9
10 11 12
Run Code Online (Sandbox Code Playgroud)

我怎么能意识到这一点?

akr*_*run 4

尝试

as.data.frame(matrix(unlist(df, use.names=FALSE),ncol=3, byrow=TRUE))
#  V1 V2 V3
#1  1  2  3
#2  4  5  6
#3  7  8  9
#4 10 11 12
Run Code Online (Sandbox Code Playgroud)

或者你可以直接matrix使用df

 as.data.frame(matrix(df, ncol=3, byrow=TRUE))
Run Code Online (Sandbox Code Playgroud)