Goal :需要一个进程来识别各种csv文件中的非ascii字符
我有一些数据中包含非ascii字符的csv文件(例如,数千个中的一个或两个员工ID将具有随机的非ascii字符) . 我想识别这些用于清理,但是当我尝试读取csv时我得到一个unicode错误,我认为这是由于非ascii字符相同 . emp_id列通常是一个数字,我在这个例子中将它转换为字符串,因为我正在使用的函数不适用于整数 . 我需要能够将此代码应用于字符串和整数 .
import pandas as pd
import numpy as np
isascii = lambda s: len(s) ==len(s.encode())
df = pd.read_csv("C:\\python_files\\data.csv", dtype={'EMP_ID': object})
for x in df['EMP_ID']:
if not isascii(x):
print(x)
Error
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x85 in position 3: invalid start byte
Sample Data
EMP_ID
34998
34994
A2…
04™Œ
00`,
99999
1 回答
您应该在
read_csv
代码中添加encoding
: