Skip to content

Commit b7d4c6c

Browse files
committed
ENH: allow single str input to na_values #1944
1 parent ba93669 commit b7d4c6c

File tree

3 files changed

+7
-0
lines changed

3 files changed

+7
-0
lines changed

pandas/core/common.py

+2
Original file line numberDiff line numberDiff line change
@@ -775,6 +775,8 @@ def is_float_dtype(arr_or_dtype):
775775
tipo = arr_or_dtype.dtype.type
776776
return issubclass(tipo, np.floating)
777777

778+
def is_list_like(arg):
779+
return hasattr(arg, '__iter__') and not isinstance(arg, basestring)
778780

779781
_ensure_float64 = _algos.ensure_float64
780782
_ensure_int64 = _algos.ensure_int64

pandas/io/parsers.py

+2
Original file line numberDiff line numberDiff line change
@@ -490,6 +490,8 @@ def __init__(self, f, delimiter=None, dialect=None, names=None, header=0,
490490
na_values[k] = v
491491
self.na_values = na_values
492492
else:
493+
if not com.is_list_like(na_values):
494+
na_values = [na_values]
493495
na_values = set(list(na_values))
494496
if keep_default_na:
495497
na_values = na_values | _NA_VALUES

pandas/io/tests/test_parsers.py

+3
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,9 @@ def test_custom_na_values(self):
532532
skiprows=[1])
533533
assert_almost_equal(df2.values, expected)
534534

535+
df3 = read_table(StringIO(data), sep=',', na_values='baz',
536+
skiprows=[1])
537+
assert_almost_equal(df3.values, expected)
535538

536539
def test_skiprows_bug(self):
537540
# GH #505

0 commit comments

Comments
 (0)