python - 在 Pandas 中读取带逗号的 CSV 文件时出现问题
问题描述
在 Pandas 中读取带有逗号和字符的 CSV 文件时出现问题的扩展
当且仅当包含逗号作为其字符的一列和其余列的行为良好时,上述链接中提供的解决方案才有效。
如果有不止一列存在上述问题怎么办?
带有附加逗号问题的示例 CSV 内容:
Name,Age,Address,Phone,Qualification
Suresh,28,Texas,3334567892,B.Tech
Ramesh,24,NewYork, NY,8978974040,9991111234,Ph.D
Mukesh,26,Dallas,4547892345,Ph.D
所需的输出 Pandas DataFrame:
Name Age Address Phone Qualification
Suresh 28 Texas 3334567892 B.Tech
Ramesh 24 NewYork, NY 8978974040,9991111234 Ph.D
Mukesh 26 Dallas 4547892345 Ph.D
编辑:
以逗号作为连续列中的字符的输入文件:
Name,Age,Address,Qualification,Grade
Suresh,28,Texas,B.Tech,Ph.D,A
Ramesh,24,NewYork, NY,B.Tech,A+
Mukesh,26,Dallas,B.Tech,Ph.D,A
所需的输出 Pandas DataFrame:
Name Age Address Qualification Grade
Suresh 28 Texas B.Tech,Ph.D A
Ramesh 24 NewYork, NY B.Tech A+
Mukesh 26 Dallas B.Tech,Ph.D A
我能得到解决这个问题的任何建议吗?
提前致谢!!!
解决方案
一种方法是必须"
清楚地分离您的数据 -
Name,Age,Address,Phone,Qualification
Suresh,28,Texas,3334567892,B.Tech
Ramesh,24,"NewYork, NY","8978974040,9991111234",Ph.D
Mukesh,26,Dallas,4547892345,Ph.D
如果这不存在,pandas
将很难正确阅读。
复制上面的数据,做一个pd.read_clipboard(sep=',')
,它会产生 -
Name Age Address Phone Qualification
0 Suresh 28 Texas 3334567892 B.Tech
1 Ramesh 24 NewYork, NY 8978974040,9991111234 Ph.D
2 Mukesh 26 Dallas 4547892345 Ph.D
如果修改源数据作为一个整体不在您的能力范围内 -
一种实用的方法是通常read_csv
使用error_bad_lines=False
. 完成后,查看日志并记下pandas
正在努力阅读的行,并相应地仅修改这些行。
希望这可以帮助。
推荐阅读
- jsonschema - 如何使用 JSON Schema 验证具有随机名称的子属性的 JSON 属性
- python - 用 splinter 填写 web 表单
- spring - 未找到使用 AJAX 的 Spring MVC 返回页面
- linux - 从 linux http 服务器执行 wget 所需的设置
- visual-studio - Visual Studio for Mac 添加到 .csproj 文件的 XspParameters 元素是什么?
- web-scraping - 是否有一种有效且便宜/免费的方法来抓取 LinkedIn 个人资料 URL?
- sql-server - SELECT INTO 在应该返回 1 时返回多条记录
- windows - Blat 希伯来语编码
- ios - 创建 Pin PDKResponseObject 响应与文档不一致
- ajax - ajax 不在谷歌云主机上运行