我在读取带有"xqz"分隔符的.txt
文件时遇到麻烦,使用read_file
或read_delim
返回"invalid 'sep' value: must be one byte"
。
这是"xqz"一个已知的分隔符,我只是不熟悉?这是一个非常大的数据集,我认为使用了"!"/";";";在数据本身中,我理解了为什么没有将它们用作分隔符。
对于读取多字节分隔符或转换为单字节分隔符有什么提示吗?
Read_file
andRead_delim
withsep = "xqz"
数据中有敏感信息,所以我做了一个假版本:
NAMExqzPLACExqzCOLORxqzTIMExqzDIRECTIONxqzSERVICE
JIM xqz1101xqzREDxqz1200xqzWESTxqzSurgery
RALPH xqz2201xqzBLUxqz1201xqzNORTxqzObservation
JEAN xqz3301xqzGRExqz1202xqzSOUTxqzMedical
您可以考虑以下方法:
library(stringr)
vec_Text <- c("NAMExqzPLACExqzCOLORxqzTIMExqzDIRECTIONxqzSERVICE",
"JIM xqz1101xqzREDxqz1200xqzWESTxqzSurgery",
"RALPH xqz2201xqzBLUxqz1201xqzNORTxqzObservation",
"JEAN xqz3301xqzGRExqz1202xqzSOUTxqzMedical")
fileConn <- file("output.csv")
writeLines(vec_Text, fileConn)
close(fileConn)
text <- readLines("output.csv")
text <- stringr::str_replace_all(text, "xqz", ";")
fileConn <- file("output_Mod.csv")
writeLines(text, fileConn)
close(fileConn)
text
[1] "NAME;PLACE;COLOR;TIME;DIRECTION;SERVICE" "JIM ;1101;RED;1200;WEST;Surgery"
[3] "RALPH ;2201;BLU;1201;NORT;Observation" "JEAN ;3301;GRE;1202;SOUT;Medical"