gpt4 book ai didi

读取 csv 但跳过字符串中的转义逗号

转载 作者:行者123 更新时间:2023-12-04 02:13:05 28 4
gpt4 key购买 nike

我有一个这样的 csv 文件:

id,name,value
1,peter,5
2,peter\,paul,3

我如何读取此文件并告诉 R "\," 不表示新列,仅表示 ","

我必须添加该文件有 400mb。

谢谢

最佳答案

可以使用readLines()将文件读入内存,然后进行预处理。如果您愿意将非分隔逗号转换为其他内容,您可以执行以下操作:

> read.csv(text = gsub("\\\\,", "-", readLines("dat.csv")))
id name value
1 1 peter 5
2 2 peter-paul 3

另一种选择是利用 data.table 中的 fread 函数作为其第一个参数执行系统命令这一事实。然后你可以在读入文件之前对文件执行类似 sed 的操作(这可能会或可能不会更快):

> data.table::fread("sed -e 's/\\\\\\,/-/g' dat.csv")
id name value
1: 1 peter 5
2: 2 peter-paul 3

然后您始终可以使用 gsub() 将临时 - 分隔符转换回逗号。

关于读取 csv 但跳过字符串中的转义逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36621266/

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