Skip to content

Commit fa1eb11

Browse files
jorisvandenbosscheTomAugspurger
authored andcommitted
BUG: fix construction of NonConsolidatableBlock with inconsistent ndim (pandas-dev#27786) (pandas-dev#27806)
1 parent 486ade0 commit fa1eb11

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

pandas/core/internals/blocks.py

+2
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,8 @@ def make_block_same_class(self, values, placement=None, ndim=None, dtype=None):
274274
)
275275
if placement is None:
276276
placement = self.mgr_locs
277+
if ndim is None:
278+
ndim = self.ndim
277279
return make_block(
278280
values, placement=placement, ndim=ndim, klass=self.__class__, dtype=dtype
279281
)

pandas/tests/extension/base/getitem.py

+6
Original file line numberDiff line numberDiff line change
@@ -260,3 +260,9 @@ def test_reindex_non_na_fill_value(self, data_missing):
260260
expected = pd.Series(data_missing._from_sequence([na, valid, valid]))
261261

262262
self.assert_series_equal(result, expected)
263+
264+
def test_loc_len1(self, data):
265+
# see GH-27785 take_nd with indexer of len 1 resulting in wrong ndim
266+
df = pd.DataFrame({"A": data})
267+
res = df.loc[[0], "A"]
268+
assert res._data._block.ndim == 1

0 commit comments

Comments
 (0)