python - 使用带有正则表达式分隔符的 read_csv 读取文本文件
问题描述
我一直在尝试使用 read_csv 读取文本文件 university_towns.txt,但如屏幕截图所示,在使用正则表达式分隔符解析文件时,如下代码所示,我收到以下错误:
ParserError:第 89 行中的预期 2 个字段,看到 3。错误可能是由于使用多字符定界符时忽略引号引起的。
有什么办法可以解决这个问题,似乎只有一个地方的双引号有问题,还请解释为什么会这样?我也尝试使用 quotechar 参数,但不明白如何使用它。
我读取文件的代码如下:
university_towns = pd.read_csv('university_towns.txt', sep= "\s\(", engine='python', header=None)
Annville (Lebanon Valley College)[2]
Bethlehem (Lehigh University, Moravian College)
Bloomsburg (Bloomsburg University of Pennsylvania)[2]
Bradford (University of Pittsburgh at Bradford)
California (California University of Pennsylvania)[2]
Carlisle (Dickinson College)
Cecil B. Moore, Philadelphia, also known as "Templetown" (Temple University)
Clarion (Clarion University of Pennsylvania)[2]
Collegeville (Ursinus College)
Cresson (Mount Aloysius College)[2]
East Stroudsburg (East Stroudsburg University of Pennsylvania)[2]
Edinboro (Edinboro University of Pennsylvania)[2]
Erie (Gannon University, Mercyhurst College, Penn State Erie)
Gettysburg (Gettysburg College)[2]
Greensburg (Seton Hill University, University of Pittsburgh at Greensburg)
Grove City (Grove City College)[2]
Huntingdon (Juniata College)[2]
Indiana (Indiana University of Pennsylvania)[2]
Johnstown (University of Pittsburgh at Johnstown)
Kutztown (Kutztown University of Pennsylvania)[2]
Lancaster (Franklin & Marshall)
Carrollton (University of West Georgia)[2]*Dahlonega (North Georgia College & State University)[2]
上面我为文本文件粘贴了一些行。此外,最后一行是第 89 行。
解决方案
显示第 83 列,这里可以看到其他一些 - 我认为有两个(
-\s\(
那里。至少这就是此错误消息的含义。其他可能的问题是那里有奇怪的字符,解析器根本就丢失了。我认为大学名称不可能......无论如何 - 看看那条线。如果这不明显 - 与我们分享。
推荐阅读
- javascript - 如何解决标签标记的问题?谷歌地图 v3
- javascript - 如何将超时变量分配给
Vuetify 中的标签? - java - 邮递员原始身体响应为 400
- windows - 对 GENERIC_EXECUTE 的 OpenSCManager 调用失败
- c++ - constexpr 类中的引用字段
- r - R中的最大堆栈大小
- python-3.x - 如何修复此 Python Tic-Tac-Toe 代码错误
- kubernetes - 使用 python 客户端删除 Kubernetes 资源
- mysql - Trying to populate two tables with a pivot between them
- sql - 有条件地重新标记行值