我正在使用 cSplit 将一列拆分为三个单独的列。分隔符是“/”
但是,我的一个字段嵌入了“/”分隔符。第三行的第三个元素应该是并且在拆分后保持为“f/j”。
当我在以下示例中尝试时,它会创建一个额外的(第四)列
name <- c("abc / efg / hij", "abc / abc / hij", "efg / efg / f/j", "abd / efj / hij")
y <- c(1,1.2,3.4, 5)
dt <- data.frame(name,y)
dt
dt <- cSplit(dt,"name","/", drop=FALSE)
dt
当我在包含超过 5,000 行的原始数据集中尝试它时,会产生以下错误:
fread(x, sep[i], header = FALSE) 中的错误:
预期 3 列,但第 2307 行在处理所有列后包含文本。使用 fill=TRUE 再试一次。另一个原因可能是 fread 在区分一个或多个在不平衡非转义引号内嵌入了 sep='/' 和/或 '\n' 字符的字段的逻辑失败了。如果 quote='' 没有帮助,请提出问题以确定是否可以改进逻辑。