Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将csv导入R时拆分行_R_Csv_Import - Fatal编程技术网

将csv导入R时拆分行

将csv导入R时拆分行,r,csv,import,R,Csv,Import,我有一个大的csv文件,其中随机行以以下字符串结尾:/\r/。这之后的下一行应该是前一行的延续,但它将被视为新行。应该应用什么函数来修复此问题?到目前为止,我已经通过将csv作为字符串向量导入到R来定位损坏的行,也就是说,我使用了文件中没有的分隔符,以便R将整行作为一列读取。现在,我想将以上述字符串结尾的行和它后面的行粘贴在一起 示例如下: "CLSL;2017-01-09;PA930082402;23;10986450" "CLNA;2016-09-05 /\r/" ";650963783;1

我有一个大的csv文件,其中随机行以以下字符串结尾:/\r/。这之后的下一行应该是前一行的延续,但它将被视为新行。应该应用什么函数来修复此问题?到目前为止,我已经通过将csv作为字符串向量导入到R来定位损坏的行,也就是说,我使用了文件中没有的分隔符,以便R将整行作为一列读取。现在,我想将以上述字符串结尾的行和它后面的行粘贴在一起

示例如下:

"CLSL;2017-01-09;PA930082402;23;10986450"
"CLNA;2016-09-05 /\r/"
";650963783;1;60010670"
我希望它看起来像这样:

"CLSL;2017-01-09;PA930082402;23;10986450"
"CLNA;2016-09-05;650963783;1;60010670"

正确的解决方案可能是在csv来源的任何数据库中的值中添加引号,但除此之外,这是将现有的字符向量组合到data.frame中的一种方法

tt <- c("CLSL;2017-01-09;PA930082402;23;10986450", 
        "CLNA;2016-09-05 /\r/", ";650963783;1;60010670",
        "CLSL;2017-01-09;PA930082402;23;10986450", 
        "CLNA;2016-09-05 /\r/", ";650963783;1;60010670")

tt <- sub(" /\r/\n", "", paste0(tt, "\n"))
tt <- paste(tt, collapse="")
read.csv2(text=tt, header=FALSE)

#     V1         V2          V3 V4       V5
# 1 CLSL 2017-01-09 PA930082402 23 10986450
# 2 CLNA 2016-09-05   650963783  1 60010670
# 3 CLSL 2017-01-09 PA930082402 23 10986450
# 4 CLNA 2016-09-05   650963783  1 60010670
tt希望这有帮助!

样本数据:
test.csv
包含

CLSL;2017-01-09;PA930082402;23;10986450
CLNA;2016-09-05 /\r/
;650963783;1;60010670

那是
\r
一个文本,还是你已经格式化的回车的标记?我没有格式化任何东西。我在使用fread导入时遇到了EOF错误,因此我导入了文件,正如我在上面所写的,作为一个列中的一个整体rów。文件太大,无法手动修复这些错误,例如在记事本中
> txt
[1] "CLSL;2017-01-09;PA930082402;23;10986450" "CLNA;2016-09-05;650963783;1;60010670"  
CLSL;2017-01-09;PA930082402;23;10986450
CLNA;2016-09-05 /\r/
;650963783;1;60010670