gpt4 book ai didi

使用非法 EOL 标记读取巨大的 csv 文件

转载 作者:行者123 更新时间:2023-12-01 03:57:41 26 4
gpt4 key购买 nike

我需要将几个巨大的(> 400MB)csv 日志文件读入 R。该文件如下所示:

N VISIT_DATE REQ_URL TYPE_LEVEL

126424 2013/1/25 23:42:34 http://weibo.cn/attgroup/privateAtt?cat=user&f=atts 1

33559 2013/1/25 15:15:54 http://i.ifeng.com/mil/mili?vt=5&dh=touch&mid=aKUiAg 1



我使用以下命令读取 csv 文件的内容。它适用于大多数数据。但是,在一些 REQ_URL中存在一些非法字符。字段如 http://some.url/query=_1A_其中 1A 是与 LF 标记非常相似的十六进制代码。看来 scan函数将这些字符视为 EOL 标记并在遇到它们时停止。有没有办法让 R 忽略这些字符或被视为 EOL 标记?谢谢。

dat<-scan(file='sample.sv', what=list("integer", "numeric", "character", "integer"), sep='\t', strip.white=T, quote="", multi.line=F, skip=1)

最佳答案

您可以使用 fread类似于 read.table 但更快更方便。

TEXT <- '126424 2013/1/25 23:42:34 http://weibo.cn/attgroup/privateAtt?cat=user&f=atts 1
33559 2013/1/25 15:15:54 http://i.ifeng.com/mil/mili?vt=5&dh=touch&mid=aKUiAg 1
33556 2013/1/25 15:15:59 http://some.url/query=_1A_ 1'
library(data.table)
fread(TEXT)
V1 V2 V3 V4 V5
1: 126424 2013/1/25 23:42:34 http://weibo.cn/attgroup/privateAtt?cat=user&f=atts 1
2: 33559 2013/1/25 15:15:54 http://i.ifeng.com/mil/mili?vt=5&dh=touch&mid=aKUiAg 1
3: 33556 2013/1/25 15:15:59 http://some.url/query=_1A_ 1

关于使用非法 EOL 标记读取巨大的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15840748/

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