我需要使用美国人口普查局分发的大都会地区数据的年度建筑许可证,可在此处下载为固定宽度格式的文本文件。这是该文件的摘录(我已经删除了列名,因为它们的格式不是很好,可以在将文件读入日期框架后替换):
999 10180 Abilene, TX 306 298 8 0 0 0
184 10420 Akron, OH 909 905 0 4 0 0
999 13980 Blacksburg-Christiansburg-Radford,
VA 543 455 0 4 84 3
145 14010 Bloomington, IL 342 214 4 0 124 7
160 15380 Buffalo-Cheektowaga-Niagara Falls,*
NY 1964 931 14 14 1005 68
268 15500 Burlington, NC 1353 938 12 16 387 20
如上面的摘录所示,名称列中的许多条目超过了列的宽度(看起来是 36 个字符)。我已经尝试了 utils 包和 readr 的各种 fwf 读取功能,但找不到将这些条目考虑在内的解决方案。任何提示将不胜感激。
编辑:原始文件摘录由 mod 编辑以进行格式化,并且在此过程中删除了超出第三列宽度的示例条目。我已经更新了摘录以重新包含它们并删除了列名。
我运行了@markdly 的代码,该代码在此编辑之前提交,适用于所有不存在此问题的条目。我将结果导出到 csv,并在下面包含了一段摘录,以显示这些条目会发生什么:
"38","999",NA,"13980",NA,"Blacksburg-Christiansburg-Radford,",NA,NA,NA,NA,NA,NA
"39","V","A",NA,NA,NA,"543",455,0,4,84,3
"40","145",NA,"14010",NA,"Bloomington, IL","342",214,4,0,124,7
"51","160",NA,"15380",NA,"Buffalo-Cheektowaga-Niagara Falls,*",NA,NA,NA,NA,NA,NA
"52","N","Y",NA,NA,NA,"1964",931,14,14,1005,68
"53","268",NA,"15500",NA,"Burlington, NC","1353",938,12,16,387,20
编辑 2:我实际上正在研究的大多数主要都市区都不属于这个问题类别,所以虽然有这些数据会很好,但如果没有可行的解决方案,会有一种从数据集中完全删除这些条目的方法?