Skip to content

Commit d9edf91

Browse files
changing ibase.default_index instead of additional case in Series.__init__
1 parent 6ff0416 commit d9edf91

File tree

4 files changed

+8
-10
lines changed

4 files changed

+8
-10
lines changed

pandas/core/indexes/base.py

+2
Original file line numberDiff line numberDiff line change
@@ -5580,6 +5580,8 @@ def _validate_join_method(method):
55805580
def default_index(n):
55815581
from pandas.core.indexes.range import RangeIndex
55825582

5583+
if n == 0:
5584+
return Index([])
55835585
return RangeIndex(0, n, name=None)
55845586

55855587

pandas/core/series.py

+1-5
Original file line numberDiff line numberDiff line change
@@ -299,11 +299,7 @@ def __init__(
299299
if index is None:
300300
if not is_list_like(data):
301301
data = [data]
302-
303-
if is_empty_data(data):
304-
index = Index([])
305-
else:
306-
index = ibase.default_index(len(data))
302+
index = ibase.default_index(len(data))
307303

308304
elif is_list_like(data):
309305

pandas/tests/frame/test_constructors.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,9 @@ def test_empty_constructor(self, constructor):
8484
@pytest.mark.parametrize(
8585
"emptylike,expected_index,expected_columns",
8686
[
87-
([[]], RangeIndex(1), RangeIndex(0)),
88-
([[], []], RangeIndex(2), RangeIndex(0)),
89-
([(_ for _ in [])], RangeIndex(1), RangeIndex(0)),
87+
([[]], RangeIndex(1), Index([])),
88+
([[], []], RangeIndex(2), Index([])),
89+
([(_ for _ in [])], RangeIndex(1), Index([])),
9090
],
9191
)
9292
def test_emptylike_constructor(self, emptylike, expected_index, expected_columns):
@@ -337,7 +337,7 @@ def test_constructor_dict(self):
337337

338338
# with dict of empty list and Series
339339
frame = DataFrame({"A": [], "B": []}, columns=["A", "B"])
340-
tm.assert_index_equal(frame.index, Index([], dtype=np.int64))
340+
tm.assert_index_equal(frame.index, Index([]))
341341

342342
# GH 14381
343343
# Dict with None value

pandas/tests/series/test_api.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -497,7 +497,7 @@ async def test_tab_complete_warning(self, ip):
497497
pytest.importorskip("IPython", minversion="6.0.0")
498498
from IPython.core.completer import provisionalcompleter
499499

500-
code = "import pandas as pd; s = pd.Series()"
500+
code = "import pandas as pd; s = pd.Series(dtype=object)"
501501
await ip.run_code(code)
502502
with tm.assert_produces_warning(None):
503503
with provisionalcompleter("ignore"):

0 commit comments

Comments
 (0)