gpt4 book ai didi

r - 在每个第 n 个元素处将向量拆分为数据帧

转载 作者:行者123 更新时间:2023-12-04 17:31:10 24 4
gpt4 key购买 nike

我想在 R 中执行以下任务。
这是字符向量:

a <- c("a", "1", "2", "3", "b", "5", "6", "7", "c", "8", "9", "11")

将 a 转换为如下所示的数据帧:
a 1 2 3
b 5 6 7
c 8 9 11

最佳答案

我们可以使用 matrix

as.data.frame(matrix(a, ncol = 4,  byrow = TRUE), stringsAsFactors = FALSE)

根据 OP 的初始帖子,数据似乎是一个字符串。如果是这样的话
a <- "a; 1; 2; 3; b; 5; 6; 7; c; 8; 9; 11"
library(data.table)
fread(gsub(";", "", gsub("((\\S+\\s+){3}\\S+)(\\s)", "\\1\n ", a, perl = TRUE)))
# V1 V2 V3 V4
#1: a 1 2 3
#2: b 5 6 7
#3: c 8 9 11

关于r - 在每个第 n 个元素处将向量拆分为数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46096681/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com