Skip to content

Commit 3078807

Browse files
include type in memo key to handle 0,1,True and False conflict
1 parent 6eb738a commit 3078807

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

pandas/_libs/parsers.pyx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2122,14 +2122,20 @@ def sanitize_objects(ndarray[object] values, set na_values) -> int:
21222122
Py_ssize_t i, n
21232123
object val, onan
21242124
Py_ssize_t na_count = 0
2125+
dict memo = {}
21252126

21262127
n = len(values)
21272128
onan = np.nan
21282129

21292130
for i in range(n):
21302131
val = values[i]
2132+
memo_key = (val, type(val))
21312133
if val in na_values:
21322134
values[i] = onan
21332135
na_count += 1
2136+
elif memo_key in memo:
2137+
values[i] = memo[memo_key]
2138+
else:
2139+
memo[memo_key] = val
21342140

21352141
return na_count

0 commit comments

Comments
 (0)