Skip to content

Commit 011891b

Browse files
committed
do not replace all nulls with NaN-string
1 parent 69f4ccf commit 011891b

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

pandas/core/indexes/base.py

+6-5
Original file line numberDiff line numberDiff line change
@@ -1390,11 +1390,12 @@ def _format_with_header(self, header: list[str_t], na_rep: str_t) -> list[str_t]
13901390
result = [pprint_thing(x, escape_chars=("\t", "\r", "\n")) for x in values]
13911391

13921392
# could have nans
1393-
mask = isna(values)
1394-
if mask.any():
1395-
result_arr = np.array(result)
1396-
result_arr[mask] = na_rep
1397-
result = result_arr.tolist()
1393+
if na_rep is not None:
1394+
mask = isna(values)
1395+
if mask.any():
1396+
result_arr = np.array(result)
1397+
result_arr[mask] = na_rep
1398+
result = result_arr.tolist()
13981399
else:
13991400
result = trim_front(format_array(values, None, justify="left"))
14001401
return header + result

pandas/io/formats/format.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -365,10 +365,10 @@ def _get_formatted_index(self) -> tuple[list[str], bool]:
365365

366366
if isinstance(index, MultiIndex):
367367
have_header = any(name for name in index.names)
368-
fmt_index = index.format(names=True)
368+
fmt_index = index.format(names=True, na_rep=None)
369369
else:
370370
have_header = index.name is not None
371-
fmt_index = index.format(name=True)
371+
fmt_index = index.format(name=True, na_rep=None)
372372
return fmt_index, have_header
373373

374374
def _get_formatted_values(self) -> list[str]:

pandas/tests/series/test_repr.py

+10
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,16 @@ def test_float_repr(self):
259259
assert repr(ser) == expected
260260

261261

262+
def test_different_null_objects(self):
263+
# GH#45263
264+
ser = pd.Series([1,2,3,4], [True, None, np.nan, pd.NaT])
265+
result = repr(ser)
266+
assert "NaT" in result
267+
assert "nan" in result
268+
assert "None" in result
269+
270+
271+
262272
class TestCategoricalRepr:
263273
def test_categorical_repr_unicode(self):
264274
# see gh-21002

0 commit comments

Comments
 (0)