r - .txt 文件中的多个分隔符
问题描述
我正在将数据从 .txt 文件导入到R
. .txt 数据的外观示例如下所示:
000003154|OAKLEAF FOREST TENANT MANAGEMENT ||1706 GREENLEAF DR|NORFOLK|VA|23523-2112|US|03|
000065837|OHIO STATE GRANGE OF PATRONS OF HUSBANDRY|64 HURON COUNTY POMONA|4655 STATE ROUTE 60|WAKEMAN|OH|44889-8602|US|05|
000107893|INTERNATIONAL ASSOCIATION OF LIONS|CLUBSSTURBRIDGE LION|204 OLD SPRINGFIELD RD|STAFFORD SPGS|CT|06076-3016|US|
000262358|KEY CLUB INTERNATIONAL||H90622 HANFORD WEST HIGH SCHOOL|1150 W LACEY BLVD|HANFORD|CA|93230-3575|US|04|
000267075|INTERNATIONAL ASSOCIATION OF LIONS|CLUBSBRUNSWICK G|3324 KELWIN AVE|BRUNSWICK|GA|31520-3741|US|04|
这里要注意的关键是,该文件中的相关分隔符大部分时间是|
. 但有时它会出现两次||
。这意味着当我使用类似的代码导入数据时,当其中一个观察值具有双分隔符时read.delim("data.txt", header=F,sep="|")
,会创建一个额外的列。R
你有什么建议来解决这个问题吗?
解决方案
您可以使用readr
软件包阅读它:
library(readr)
library(dplyr)
library(stringr)
text_file <- read_file("~/Desktop/tekst.txt")
text_file2 <- gsub("\\|\\|", "\\|", text_file)
text_df <- unlist(strsplit(text_file2, split = "\\\n"))
data.frame(col = text_df) %>%
filter(col != "") %>%
mutate(col = str_split_fixed(col, "\\|", 10))
推荐阅读
- c# - 在 json 对象中循环遍历 json 对象
- vue.js - 在 Cypress 中更改节点 env var
- android-studio - 卡在 Syncing files to device Chrome... Flutter Web
- redirect - 如何在 Netlify 重定向文件中编写占位符变量
- tensorflow - 用于 sparkfun 边缘微控制器的 Tensorflow lite,未找到内置操作码“CONV_2D”版本 2 和 3 的操作
- python - Python:请求:发布:基本授权
- spring-boot - 有没有一种简单的方法可以更改应用程序 iml 中的目录以构建测试文件夹?
- vba - 我正在尝试使用 VBA 下载文档,这似乎可以工作,但 pdf 未在 Adobe Reader 中显示
- python - Pandas - 根据在其他列上完成的条件数学创建新列
- flutter - 是否可以强制 Text 小部件使用两行空间?