【发布时间】:2021-09-05 14:25:57
【问题描述】:
这是我正在使用的命令:
dallData <- fread("data.csv", showProgress = TRUE, colClasses = c(rep("NULL", 2), "character", rep("NULL", 37)))
但在尝试加载时出现此错误:R character strings are limited to 2^31-1 bytes|
无论如何要跳过这些值?
【问题讨论】:
-
您可以尝试 vroom 并排除该列,尽管有些地方似乎不对 - 您的数据集中真的有 2.1Gb 字符串吗?或者 fread 没有正确读取数据...
-
我无法排除该列,因为它是最重要的列。很难判断它是否正确读取我不知道错误的确切行。它确实正确读取了前几百万行,不过我已经对其进行了测试。
-
您能否通过二分法缩小出现问题的行(即使用
skip和nrows参数读取前半部分、后半部分、第二季度等...您甚至可以通过使用try()(和if (inherits(result, "try-error")) ...来缩小问题的位置)自动执行此操作。 -
听起来您的 CSV 格式可能有误。最可能的原因是引号不匹配。也许您可以请最初生成文件的人来修复错误。
-
我试过你说的,但它似乎是随机的,我的 CSV 很好,它在 sql 中完美运行
标签: r performance csv ram