Skip to content

Commit f4d2bfa

Browse files
jbrockmendelproost
authored andcommitted
REF: de-privatize indexes.api names (pandas-dev#29495)
1 parent fad8009 commit f4d2bfa

File tree

7 files changed

+35
-48
lines changed

7 files changed

+35
-48
lines changed

pandas/core/groupby/generic.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
_transform_template,
6464
get_groupby,
6565
)
66-
from pandas.core.index import Index, MultiIndex, _all_indexes_same
66+
from pandas.core.indexes.api import Index, MultiIndex, all_indexes_same
6767
import pandas.core.indexes.base as ibase
6868
from pandas.core.internals import BlockManager, make_block
6969
from pandas.core.series import Series
@@ -1186,7 +1186,7 @@ def first_not_none(values):
11861186
if isinstance(v, (np.ndarray, Index, Series)):
11871187
if isinstance(v, Series):
11881188
applied_index = self._selected_obj._get_axis(self.axis)
1189-
all_indexed_same = _all_indexes_same([x.index for x in values])
1189+
all_indexed_same = all_indexes_same([x.index for x in values])
11901190
singular_series = len(values) == 1 and applied_index.nlevels == 1
11911191

11921192
# GH3596

pandas/core/index.py

+1-5
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,9 @@
1313
RangeIndex,
1414
TimedeltaIndex,
1515
UInt64Index,
16-
_all_indexes_same,
17-
_get_combined_index,
18-
_get_consensus_names,
19-
_get_objs_combined_axis,
2016
_new_Index,
21-
_union_indexes,
2217
ensure_index,
2318
ensure_index_from_sequences,
19+
get_objs_combined_axis,
2420
)
2521
from pandas.core.indexes.multi import _sparsify # noqa:F401

pandas/core/indexes/api.py

+16-17
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,23 @@
66
import pandas.core.common as com
77
from pandas.core.indexes.base import (
88
Index,
9+
InvalidIndexError,
910
_new_Index,
1011
ensure_index,
1112
ensure_index_from_sequences,
1213
)
13-
from pandas.core.indexes.base import InvalidIndexError # noqa:F401
14-
from pandas.core.indexes.category import CategoricalIndex # noqa:F401
14+
from pandas.core.indexes.category import CategoricalIndex
1515
from pandas.core.indexes.datetimes import DatetimeIndex
16-
from pandas.core.indexes.interval import IntervalIndex # noqa:F401
17-
from pandas.core.indexes.multi import MultiIndex # noqa:F401
18-
from pandas.core.indexes.numeric import ( # noqa:F401
16+
from pandas.core.indexes.interval import IntervalIndex
17+
from pandas.core.indexes.multi import MultiIndex
18+
from pandas.core.indexes.numeric import (
1919
Float64Index,
2020
Int64Index,
2121
NumericIndex,
2222
UInt64Index,
2323
)
2424
from pandas.core.indexes.period import PeriodIndex
25-
from pandas.core.indexes.range import RangeIndex # noqa:F401
25+
from pandas.core.indexes.range import RangeIndex
2626
from pandas.core.indexes.timedeltas import TimedeltaIndex
2727

2828
_sort_msg = textwrap.dedent(
@@ -57,15 +57,14 @@
5757
"NaT",
5858
"ensure_index",
5959
"ensure_index_from_sequences",
60-
"_get_combined_index",
61-
"_get_objs_combined_axis",
62-
"_union_indexes",
63-
"_get_consensus_names",
64-
"_all_indexes_same",
60+
"get_objs_combined_axis",
61+
"union_indexes",
62+
"get_consensus_names",
63+
"all_indexes_same",
6564
]
6665

6766

68-
def _get_objs_combined_axis(objs, intersect=False, axis=0, sort=True):
67+
def get_objs_combined_axis(objs, intersect=False, axis=0, sort=True):
6968
"""
7069
Extract combined index: return intersection or union (depending on the
7170
value of "intersect") of indexes on given axis, or None if all objects
@@ -137,7 +136,7 @@ def _get_combined_index(indexes, intersect=False, sort=False):
137136
for other in indexes[1:]:
138137
index = index.intersection(other)
139138
else:
140-
index = _union_indexes(indexes, sort=sort)
139+
index = union_indexes(indexes, sort=sort)
141140
index = ensure_index(index)
142141

143142
if sort:
@@ -148,7 +147,7 @@ def _get_combined_index(indexes, intersect=False, sort=False):
148147
return index
149148

150149

151-
def _union_indexes(indexes, sort=True):
150+
def union_indexes(indexes, sort=True):
152151
"""
153152
Return the union of indexes.
154153
@@ -217,7 +216,7 @@ def conv(i):
217216

218217
return _unique_indices(indexes)
219218

220-
name = _get_consensus_names(indexes)[0]
219+
name = get_consensus_names(indexes)[0]
221220
if name != index.name:
222221
index = index._shallow_copy(name=name)
223222
return index
@@ -264,7 +263,7 @@ def _sanitize_and_check(indexes):
264263
return indexes, "array"
265264

266265

267-
def _get_consensus_names(indexes):
266+
def get_consensus_names(indexes):
268267
"""
269268
Give a consensus 'names' to indexes.
270269
@@ -289,7 +288,7 @@ def _get_consensus_names(indexes):
289288
return [None] * indexes[0].nlevels
290289

291290

292-
def _all_indexes_same(indexes):
291+
def all_indexes_same(indexes):
293292
"""
294293
Determine if all indexes contain the same elements.
295294

pandas/core/internals/construction.py

+5-9
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,9 @@
3737
from pandas.core import algorithms, common as com
3838
from pandas.core.arrays import Categorical
3939
from pandas.core.construction import sanitize_array
40-
from pandas.core.index import (
41-
Index,
42-
_get_objs_combined_axis,
43-
_union_indexes,
44-
ensure_index,
45-
)
40+
from pandas.core.index import Index, ensure_index, get_objs_combined_axis
4641
from pandas.core.indexes import base as ibase
42+
from pandas.core.indexes.api import union_indexes
4743
from pandas.core.internals import (
4844
create_block_manager_from_arrays,
4945
create_block_manager_from_blocks,
@@ -345,9 +341,9 @@ def extract_index(data):
345341
raise ValueError("If using all scalar values, you must pass an index")
346342

347343
if have_series:
348-
index = _union_indexes(indexes)
344+
index = union_indexes(indexes)
349345
elif have_dicts:
350-
index = _union_indexes(indexes, sort=False)
346+
index = union_indexes(indexes, sort=False)
351347

352348
if have_raw_arrays:
353349
lengths = list(set(raw_lengths))
@@ -493,7 +489,7 @@ def _list_to_arrays(data, columns, coerce_float=False, dtype=None):
493489

494490
def _list_of_series_to_arrays(data, columns, coerce_float=False, dtype=None):
495491
if columns is None:
496-
columns = _get_objs_combined_axis(data, sort=False)
492+
columns = get_objs_combined_axis(data, sort=False)
497493

498494
indexer_cache = {}
499495

pandas/core/reshape/concat.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@
1313
)
1414
import pandas.core.common as com
1515
from pandas.core.generic import NDFrame
16-
from pandas.core.index import (
17-
_all_indexes_same,
18-
_get_consensus_names,
19-
_get_objs_combined_axis,
16+
from pandas.core.indexes.api import (
17+
all_indexes_same,
2018
ensure_index,
19+
get_consensus_names,
20+
get_objs_combined_axis,
2121
)
2222
import pandas.core.indexes.base as ibase
2323
from pandas.core.internals import concatenate_block_managers
@@ -523,7 +523,7 @@ def _get_new_axes(self):
523523
def _get_comb_axis(self, i):
524524
data_axis = self.objs[0]._get_block_manager_axis(i)
525525
try:
526-
return _get_objs_combined_axis(
526+
return get_objs_combined_axis(
527527
self.objs, axis=data_axis, intersect=self.intersect, sort=self.sort
528528
)
529529
except IndexError:
@@ -617,7 +617,7 @@ def _make_concat_multiindex(indexes, keys, levels=None, names=None) -> MultiInde
617617
else:
618618
levels = [ensure_index(x) for x in levels]
619619

620-
if not _all_indexes_same(indexes):
620+
if not all_indexes_same(indexes):
621621
codes_list = []
622622

623623
# things are potentially different sizes, so compute the exact codes
@@ -660,7 +660,7 @@ def _make_concat_multiindex(indexes, keys, levels=None, names=None) -> MultiInde
660660
)
661661

662662
# also copies
663-
names = names + _get_consensus_names(indexes)
663+
names = names + get_consensus_names(indexes)
664664

665665
return MultiIndex(
666666
levels=levels, codes=codes_list, names=names, verify_integrity=False

pandas/core/reshape/pivot.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import pandas.core.common as com
1010
from pandas.core.frame import _shared_docs
1111
from pandas.core.groupby import Grouper
12-
from pandas.core.index import Index, MultiIndex, _get_objs_combined_axis
12+
from pandas.core.index import Index, MultiIndex, get_objs_combined_axis
1313
from pandas.core.reshape.concat import concat
1414
from pandas.core.reshape.util import cartesian_product
1515
from pandas.core.series import Series
@@ -541,7 +541,7 @@ def crosstab(
541541
rownames = _get_names(index, rownames, prefix="row")
542542
colnames = _get_names(columns, colnames, prefix="col")
543543

544-
common_idx = _get_objs_combined_axis(index + columns, intersect=True, sort=False)
544+
common_idx = get_objs_combined_axis(index + columns, intersect=True, sort=False)
545545

546546
data = {}
547547
data.update(zip(rownames, index))

pandas/tests/indexes/test_base.py

+2-6
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,8 @@
3333
period_range,
3434
)
3535
from pandas.core.algorithms import safe_sort
36-
from pandas.core.index import (
37-
_get_combined_index,
38-
ensure_index,
39-
ensure_index_from_sequences,
40-
)
41-
from pandas.core.indexes.api import Index, MultiIndex
36+
from pandas.core.index import ensure_index, ensure_index_from_sequences
37+
from pandas.core.indexes.api import Index, MultiIndex, _get_combined_index
4238
from pandas.tests.indexes.common import Base
4339
from pandas.tests.indexes.conftest import indices_dict
4440
import pandas.util.testing as tm

0 commit comments

Comments
 (0)