你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益:
- 了解大厂经验
- 拥有和大厂相匹配的技术等
希望看什么,评论或者私信告诉我!
文章目录
- 一、前言
- 二、问题复现
- 1. 问题
- 2. 通过 on_bad_lines='warn' 跳过异常数据
- 3. 没办法了 delimiter='\t'
- 4. 添加 delimiter后,按列无法取值
- 5. 没有办法回归最原始的方式
- 三、总结
一、前言
我有一个 csv 文件,要做数据分析,可是用 pandas 死活读不出来,差点搞崩溃了。
但打开 csv 文件,发现里面的内容啥的还是蛮正常的
并且以 逗号 分割
二、问题复现
1. 问题
import pandas as pd
df=pd.read_csv('./data/test.csv')
df
2. 通过 on_bad_lines=‘warn’ 跳过异常数据
不报错了,但发现数据错位了。
3. 没办法了 delimiter=‘\t’
数据总算对了,看着是没有错位
4. 添加 delimiter后,按列无法取值
仔细想想也应该这样,因为本来分割符就是 ‘,’
5. 没有办法回归最原始的方式
with open(f'{file_path}', newline='',encoding='utf-8') as csvfile:
reader = csv.DictReader(csvfile)
三、总结
通过本文可见,正确的参数设置对于使用Pandas读取CSV文件至关重要。在处理异常数据时,合适的参数选择和方法应用能有效解决数据错位和取值异常等问题,确保数据的准确性和完整性。