我有关于鱼类ID的数据,ID变量由四个字母的代码组成,第一个字母用于陪产假,第二个字母用于产假,第三个字母代表治疗,第四个字母代表个人。单个观察结果可能像这样BBRG
。
此数据是一个变量,我需要将这些字母分成单独的列,因为没有分隔符,所以我不确定在sep=
的{{1}}参数中应放置什么。
示例数据:
separate
答案 0 :(得分:1)
我们可以使用正则表达式环视
ConsumeContext
或将library(tidyverse)
df1 %>%
separate(ID, into = c("paternity", "maternity", "treatment", "individual"),
sep="(?<=[A-Z])")
指定为位置索引
sep
一种df1 %>%
separate(ID, into = c("paternity", "maternity", "treatment", "individual"),
sep= c(1, 2, 3))
方法将是
base R
do.call(rbind, strsplit(df1$ID, ""))