4
我有一個129 MB的CSV文件,包含849,275行和18列。我正在嘗試使用read_csv
將CSV文件讀取到熊貓DataFrame
中。Python Pandas DataFrame read_csv UnicodeDecodeError
當我使用encoding='cp1252'
:
read_file = pd.read_csv('myfile.csv', encoding='cp1252')
的錯誤是很長,但最終表示,這在底部:
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 41:
character maps to <undefined>
當我指定:沒有編碼,encoding='utf-8'
,或encoding='utf-8-sig'
,我得到:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x96 in position 65:
invalid start byte
問題:
我很好,完全刪除這些有問題的字符。更好的辦法是將它們標準化爲127以下的ASCII字符。我怎樣才能使用JUST PANDAS?如果它存在,我正在尋找最熊貓的方式。
不要矯枉過正這個問題,但這裏的類型,我敢肯定的一列字符的列表是造成問題:
Character Ord
32
! 33
" 34
# 35
$ 36
% 37
& 38
' 39
( 40
) 41
* 42
+ 43
, 44
- 45
. 46
/ 47
0 48
1 49
2 50
3 51
4 52
5 53
6 54
7 55
8 56
9 57
: 58
; 59
< 60
= 61
> 62
? 63
@ 64
A 65
B 66
C 67
D 68
E 69
F 70
G 71
H 72
I 73
J 74
K 75
L 76
M 77
N 78
O 79
P 80
Q 81
R 82
S 83
T 84
U 85
V 86
W 87
X 88
Y 89
Z 90
[ 91
\ 92
] 93
^ 94
_ 95
` 96
a 97
b 98
c 99
d 100
e 101
f 102
g 103
h 104
i 105
j 106
k 107
l 108
m 109
n 110
o 111
p 112
q 113
r 114
s 115
t 116
u 117
v 118
w 119
x 120
y 121
z 122
{ 123
| 124
} 125
~ 126
129
143
157
160
¡ 161
¢ 162
£ 163
§ 167
¨ 168
© 169
« 171
¬ 172
® 174
° 176
± 177
² 178
³ 179
´ 180
µ 181
· 183
¸ 184
¹ 185
º 186
¼ 188
½ 189
¾ 190
× 215
ß 223
à 224
á 225
â 226
ã 227
ä 228
å 229
æ 230
ç 231
è 232
é 233
ì 236
í 237
î 238
ï 239
ð 240
ñ 241
ó 243
ô 244
ö 246
ú 250
û 251
ü 252
š 353
Ž 381
ƒ 402
– 8211
— 8212
‘ 8216
’ 8217
‚ 8218
「 8220
」 8221
„ 8222
† 8224
• 8226
… 8230
‹ 8249
› 8250
€ 8364
™ 8482