Skip to content

Commit 3e5511b

Browse files
committed
BUG: fillna ignoring axis=1 parameter. pandas-dev#17399
1 parent 062f6f1 commit 3e5511b

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

pandas/core/generic.py

+7-2
Original file line numberDiff line numberDiff line change
@@ -4136,9 +4136,14 @@ def fillna(self, value=None, method=None, axis=None, inplace=False,
41364136
return result if not inplace else None
41374137

41384138
elif not is_list_like(value):
4139-
new_data = self._data.fillna(value=value, limit=limit,
4139+
if axis == 0:
4140+
new_data = self._data.fillna(value=value, limit=limit,
4141+
inplace=inplace,
4142+
downcast=downcast)
4143+
elif axis == 1:
4144+
new_data = self.T.fillna(value=value, limit=limit,
41404145
inplace=inplace,
4141-
downcast=downcast)
4146+
downcast=downcast).T._data
41424147
elif isinstance(value, DataFrame) and self.ndim == 2:
41434148
new_data = self.where(self.notna(), value)
41444149
else:

pandas/tests/frame/test_missing.py

+8
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,14 @@ def test_frame_fillna_limit(self):
388388
expected.values[:3] = np.nan
389389
tm.assert_frame_equal(result, expected)
390390

391+
# axis=1
392+
# GH 7399
393+
df.iloc[1:4, 1:4] = nan
394+
expected = df.copy()
395+
expected.iloc[1:4, 1:3] = 0
396+
result = df.fillna(0, limit=2, axis=1)
397+
tm.assert_frame_equal(result, expected)
398+
391399
def test_fillna_skip_certain_blocks(self):
392400
# don't try to fill boolean, int blocks
393401

0 commit comments

Comments
 (0)