Skip to content

Commit df59a2c

Browse files
committed
BUG: Handle NaN values for datetime and timedelta dtypes in BlockManager
1 parent cff4f36 commit df59a2c

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

pandas/core/internals/managers.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1800,6 +1800,8 @@ def as_array(
18001800
arr = np.asarray(blk.values, dtype=dtype)
18011801
else:
18021802
arr = np.array(blk.values, dtype=dtype, copy=copy)
1803+
if passed_nan and blk.dtype.kind in ["m", "M"]:
1804+
arr[isna(blk.values)] = na_value
18031805

18041806
if not copy:
18051807
arr = arr.view()
@@ -1865,6 +1867,8 @@ def _interleave(
18651867
else:
18661868
arr = blk.get_values(dtype)
18671869
result[rl.indexer] = arr
1870+
if na_value is not lib.no_default and blk.dtype.kind in ["m", "M"]:
1871+
result[rl.indexer][isna(arr)] = na_value
18681872
itemmask[rl.indexer] = 1
18691873

18701874
if not itemmask.all():

0 commit comments

Comments
 (0)