You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用readr::read_delim()读取竖线分隔文件失败,求解决方案

问题:readr::read_delim读取竖线分隔文件出现列偏移和NA值

尝试使用readr::read_delim()函数读取竖线|分隔的txt文件时失败,具体表现为第77410行出现缺失值(NA)且列值发生偏移。

原文件第77408至77411行内容如下:

3503|c^^ZVSS|240|2|A1|240|19.3965|0.0|0.0|0.0|0.0|0.0|18588.8|7|7|7|9|1|2022-12-02 09:57:02| 
3995|c^\^]SS|240|2|A1|240|19.3965|0.0|0.0|0.0|0.0|0.0|100300.0|6|6|6|9|1|2022-12-02 12:38:08| 
3430|_cWUTPK|240|1|A1|240|19.3965|6789.0|0.0|0.0|776.0|0.0|101.153|7|7|7|9|1|2022-12-02 14:57:01| 
3172|fa_^YWY|300|1|A1|300|19.3965|0.0|0.0|0.0|0.0|0.0|0.299|7|7|7|9|1|2022-12-02 18:01:01| 

使用的read_delim()代码如下:

dic_501 <- read_delim("t_501.txt",
                      delim = "|", 
                      col_names = FALSE, 
                      col_select = c(1:5, 18, 19, 20),
                      col_types = cols(X1 = col_integer(), 
                                       X2 = col_character(), 
                                       X3 = col_integer(),
                                       X4 = col_character(),
                                       X5 = col_character(),
                                       X18 = col_integer(),
                                       X19 = col_character(),
                                       X20 = col_character()
                                       ),
                      escape_backslash = FALSE, 
                      escape_double = TRUE,
                      skip_empty_rows = TRUE
                      )

读取后结果存在列偏移和NA值问题,期望各列值能正确对应。目前已通过read.table()解决该问题,代码如下:

T_501 <- read.table("t_501.txt", 
                    sep = "|", 
                    header = FALSE, 
                    stringsAsFactors = FALSE, 
                    fill = TRUE, 
                    quote = "", 
                    skipNul = TRUE, 
                    colClasses = c("V3" = 'character', "V6" = "character"))

请问如何使用read_delim()或其他readr包函数正确读取该文件?


内容的提问来源于stack exchange,提问作者Eduardo López

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 22:43:25