Skip to content

Commit de6a5cc

Browse files
authored
REF: remove NDFrame._convert (#50026)
1 parent ffd8b00 commit de6a5cc

File tree

12 files changed

+11
-180
lines changed

12 files changed

+11
-180
lines changed

pandas/core/generic.py

-31
Original file line numberDiff line numberDiff line change
@@ -6315,37 +6315,6 @@ def __deepcopy__(self: NDFrameT, memo=None) -> NDFrameT:
63156315
"""
63166316
return self.copy(deep=True)
63176317

6318-
@final
6319-
def _convert(
6320-
self: NDFrameT,
6321-
*,
6322-
datetime: bool_t = False,
6323-
timedelta: bool_t = False,
6324-
) -> NDFrameT:
6325-
"""
6326-
Attempt to infer better dtype for object columns.
6327-
6328-
Parameters
6329-
----------
6330-
datetime : bool, default False
6331-
If True, convert to date where possible.
6332-
timedelta : bool, default False
6333-
If True, convert to timedelta where possible.
6334-
6335-
Returns
6336-
-------
6337-
converted : same as input object
6338-
"""
6339-
validate_bool_kwarg(datetime, "datetime")
6340-
validate_bool_kwarg(timedelta, "timedelta")
6341-
return self._constructor(
6342-
self._mgr.convert(
6343-
datetime=datetime,
6344-
timedelta=timedelta,
6345-
copy=True,
6346-
)
6347-
).__finalize__(self)
6348-
63496318
@final
63506319
def infer_objects(self: NDFrameT) -> NDFrameT:
63516320
"""

pandas/core/groupby/generic.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -1681,9 +1681,8 @@ def _wrap_agged_manager(self, mgr: Manager2D) -> DataFrame:
16811681
if self.axis == 1:
16821682
result = result.T
16831683

1684-
# Note: we only need to pass datetime=True in order to get numeric
1685-
# values converted
1686-
return self._reindex_output(result)._convert(datetime=True)
1684+
# Note: we really only care about inferring numeric dtypes here
1685+
return self._reindex_output(result).infer_objects()
16871686

16881687
def _iterate_column_groupbys(self, obj: DataFrame | Series):
16891688
for i, colname in enumerate(obj.columns):

pandas/plotting/_matplotlib/core.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -600,9 +600,9 @@ def _compute_plot_data(self):
600600
self.subplots = True
601601
data = reconstruct_data_with_by(self.data, by=self.by, cols=self.columns)
602602

603-
# GH16953, _convert is needed as fallback, for ``Series``
603+
# GH16953, infer_objects is needed as fallback, for ``Series``
604604
# with ``dtype == object``
605-
data = data._convert(datetime=True, timedelta=True)
605+
data = data.infer_objects()
606606
include_type = [np.number, "datetime", "datetimetz", "timedelta"]
607607

608608
# GH23719, allow plotting boolean

pandas/plotting/_matplotlib/hist.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def _args_adjust(self) -> None:
7878

7979
def _calculate_bins(self, data: DataFrame) -> np.ndarray:
8080
"""Calculate bins given data"""
81-
nd_values = data._convert(datetime=True)._get_numeric_data()
81+
nd_values = data.infer_objects()._get_numeric_data()
8282
values = np.ravel(nd_values)
8383
values = values[~isna(values)]
8484

pandas/tests/apply/test_frame_apply.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,7 @@ def test_apply_convert_objects():
461461
}
462462
)
463463

464-
result = expected.apply(lambda x: x, axis=1)._convert(datetime=True)
464+
result = expected.apply(lambda x: x, axis=1)
465465
tm.assert_frame_equal(result, expected)
466466

467467

pandas/tests/frame/methods/test_convert.py

-42
This file was deleted.

pandas/tests/io/pytables/test_append.py

-1
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,6 @@ def check_col(key, name, size):
592592
df_dc.loc[df_dc.index[7:9], "string"] = "bar"
593593
df_dc["string2"] = "cool"
594594
df_dc["datetime"] = Timestamp("20010102")
595-
df_dc = df_dc._convert(datetime=True)
596595
df_dc.loc[df_dc.index[3:5], ["A", "B", "datetime"]] = np.nan
597596

598597
_maybe_remove(store, "df_dc")

pandas/tests/io/pytables/test_errors.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ def test_unimplemented_dtypes_table_columns(setup_path):
7575
df["obj1"] = "foo"
7676
df["obj2"] = "bar"
7777
df["datetime1"] = datetime.date(2001, 1, 2)
78-
df = df._consolidate()._convert(datetime=True)
78+
df = df._consolidate()
7979

8080
with ensure_clean_store(setup_path) as store:
8181
# this fails because we have a date in the object block......

pandas/tests/io/pytables/test_put.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ def test_put_mixed_type(setup_path):
197197
df["datetime1"] = datetime.datetime(2001, 1, 2, 0, 0)
198198
df["datetime2"] = datetime.datetime(2001, 1, 3, 0, 0)
199199
df.loc[df.index[3:6], ["obj1"]] = np.nan
200-
df = df._consolidate()._convert(datetime=True)
200+
df = df._consolidate()
201201

202202
with ensure_clean_store(setup_path) as store:
203203
_maybe_remove(store, "df")

pandas/tests/io/pytables/test_store.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ def test_repr(setup_path):
129129
df["datetime1"] = datetime.datetime(2001, 1, 2, 0, 0)
130130
df["datetime2"] = datetime.datetime(2001, 1, 3, 0, 0)
131131
df.loc[df.index[3:6], ["obj1"]] = np.nan
132-
df = df._consolidate()._convert(datetime=True)
132+
df = df._consolidate()
133133

134134
with catch_warnings(record=True):
135135
simplefilter("ignore", pd.errors.PerformanceWarning)
@@ -444,7 +444,7 @@ def test_table_mixed_dtypes(setup_path):
444444
df["datetime1"] = datetime.datetime(2001, 1, 2, 0, 0)
445445
df["datetime2"] = datetime.datetime(2001, 1, 3, 0, 0)
446446
df.loc[df.index[3:6], ["obj1"]] = np.nan
447-
df = df._consolidate()._convert(datetime=True)
447+
df = df._consolidate()
448448

449449
with ensure_clean_store(setup_path) as store:
450450
store.append("df1_mixed", df)

pandas/tests/io/test_html.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -627,7 +627,7 @@ def try_remove_ws(x):
627627
]
628628
dfnew = df.applymap(try_remove_ws).replace(old, new)
629629
gtnew = ground_truth.applymap(try_remove_ws)
630-
converted = dfnew._convert(datetime=True)
630+
converted = dfnew
631631
date_cols = ["Closing Date", "Updated Date"]
632632
converted[date_cols] = converted[date_cols].apply(to_datetime)
633633
tm.assert_frame_equal(converted, gtnew)

pandas/tests/series/methods/test_convert.py

-94
This file was deleted.

0 commit comments

Comments
 (0)