From 596b0d019ce112a0d32fdaf84eb1e792ff6554a4 Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Tue, 7 Jul 2020 12:43:40 -0500 Subject: [PATCH 1/6] CI: update to isort 5 --- asv_bench/benchmarks/arithmetic.py | 14 +++- asv_bench/benchmarks/eval.py | 4 +- asv_bench/benchmarks/frame_ctor.py | 2 +- asv_bench/benchmarks/gil.py | 8 +- asv_bench/benchmarks/io/parsers.py | 2 +- asv_bench/benchmarks/pandas_vb_common.py | 4 +- ci/code_checks.sh | 2 +- doc/source/development/contributing.rst | 2 +- environment.yml | 2 +- pandas/_config/config.py | 5 +- pandas/_libs/algos.pyx | 14 ++-- pandas/_libs/groupby.pyx | 48 +++++++++--- pandas/_libs/hashing.pyx | 8 +- pandas/_libs/hashtable.pyx | 75 +++++++++---------- pandas/_libs/index.pyx | 8 +- pandas/_libs/internals.pyx | 3 + pandas/_libs/interval.pyx | 16 ++-- pandas/_libs/join.pyx | 9 ++- pandas/_libs/lib.pyx | 48 ++++++------ pandas/_libs/missing.pyx | 16 ++-- pandas/_libs/ops.pyx | 9 +-- pandas/_libs/parsers.pyx | 68 +++++++++++------ pandas/_libs/reduction.pyx | 9 ++- pandas/_libs/reshape.pyx | 2 + pandas/_libs/sparse.pyx | 15 +++- pandas/_libs/testing.pyx | 7 +- pandas/_libs/tslib.pyx | 28 +++---- pandas/_libs/tslibs/ccalendar.pyx | 3 +- pandas/_libs/tslibs/conversion.pyx | 58 +++++++++----- pandas/_libs/tslibs/fields.pyx | 27 +++++-- pandas/_libs/tslibs/nattype.pyx | 24 +++--- pandas/_libs/tslibs/np_datetime.pyx | 6 +- pandas/_libs/tslibs/offsets.pyx | 45 +++++++---- pandas/_libs/tslibs/parsing.pyx | 41 +++++----- pandas/_libs/tslibs/period.pyx | 69 +++++++++-------- pandas/_libs/tslibs/resolution.pyx | 10 +-- pandas/_libs/tslibs/strptime.pyx | 17 +++-- pandas/_libs/tslibs/timedeltas.pyx | 40 ++++++---- pandas/_libs/tslibs/timestamps.pyx | 62 ++++++++------- pandas/_libs/tslibs/timezones.pyx | 12 ++- pandas/_libs/tslibs/tzconversion.pyx | 18 +++-- pandas/_libs/window/aggregations.pyx | 10 ++- pandas/_libs/window/indexers.pyx | 4 +- pandas/_libs/writers.pyx | 2 +- pandas/_testing.py | 6 +- pandas/_typing.py | 10 ++- pandas/compat/pickle_compat.py | 3 +- pandas/conftest.py | 7 +- pandas/core/aggregation.py | 3 +- pandas/core/apply.py | 2 +- pandas/core/arrays/categorical.py | 8 +- pandas/core/arrays/datetimelike.py | 5 +- pandas/core/arrays/datetimes.py | 2 +- pandas/core/arrays/integer.py | 1 + pandas/core/arrays/interval.py | 3 +- pandas/core/arrays/period.py | 4 +- pandas/core/arrays/sparse/accessor.py | 8 +- pandas/core/arrays/sparse/array.py | 11 +-- pandas/core/arrays/timedeltas.py | 3 +- pandas/core/base.py | 6 +- pandas/core/computation/align.py | 3 +- pandas/core/computation/engines.py | 3 +- pandas/core/computation/expr.py | 5 +- pandas/core/computation/ops.py | 3 +- pandas/core/computation/pytables.py | 3 +- pandas/core/config_init.py | 8 +- pandas/core/construction.py | 15 ++-- pandas/core/dtypes/cast.py | 4 +- pandas/core/dtypes/dtypes.py | 13 ++-- pandas/core/dtypes/missing.py | 3 +- pandas/core/frame.py | 15 ++-- pandas/core/generic.py | 11 ++- pandas/core/groupby/generic.py | 7 +- pandas/core/groupby/groupby.py | 8 +- pandas/core/groupby/grouper.py | 3 +- pandas/core/groupby/ops.py | 14 ++-- pandas/core/indexes/api.py | 2 +- pandas/core/indexes/base.py | 10 +-- pandas/core/indexes/category.py | 6 +- pandas/core/indexes/datetimelike.py | 5 +- pandas/core/indexes/datetimes.py | 2 +- pandas/core/indexes/interval.py | 4 +- pandas/core/indexes/multi.py | 6 +- pandas/core/indexes/numeric.py | 3 +- pandas/core/indexes/period.py | 4 +- pandas/core/indexes/range.py | 7 +- pandas/core/indexes/timedeltas.py | 3 +- pandas/core/indexing.py | 2 +- pandas/core/internals/blocks.py | 9 +-- pandas/core/internals/concat.py | 2 +- pandas/core/internals/construction.py | 2 +- pandas/core/internals/managers.py | 3 +- pandas/core/internals/ops.py | 2 +- pandas/core/ops/array_ops.py | 2 +- pandas/core/resample.py | 2 +- pandas/core/reshape/concat.py | 5 +- pandas/core/reshape/melt.py | 2 +- pandas/core/reshape/merge.py | 8 +- pandas/core/reshape/pivot.py | 2 +- pandas/core/reshape/reshape.py | 5 +- pandas/core/reshape/tile.py | 3 +- pandas/core/series.py | 7 +- pandas/core/sorting.py | 2 +- pandas/core/strings.py | 10 +-- pandas/core/tools/datetimes.py | 5 +- pandas/core/util/hashing.py | 4 +- pandas/core/window/ewm.py | 4 +- pandas/core/window/rolling.py | 8 +- pandas/io/clipboard/__init__.py | 17 ++--- pandas/io/excel/_base.py | 2 +- pandas/io/excel/_odfreader.py | 4 +- pandas/io/excel/_odswriter.py | 2 +- pandas/io/excel/_openpyxl.py | 2 +- pandas/io/excel/_xlrd.py | 4 +- pandas/io/excel/_xlsxwriter.py | 2 +- pandas/io/excel/_xlwt.py | 2 +- pandas/io/formats/excel.py | 3 +- pandas/io/formats/format.py | 5 +- pandas/io/formats/style.py | 6 +- pandas/io/html.py | 3 +- pandas/io/json/_json.py | 2 +- pandas/io/json/_table_schema.py | 4 +- pandas/io/parsers.py | 5 +- pandas/io/pytables.py | 4 +- pandas/io/sas/sas.pyx | 4 +- pandas/io/sas/sas7bdat.py | 2 +- pandas/io/sql.py | 19 +++-- pandas/plotting/_core.py | 2 +- pandas/plotting/_matplotlib/__init__.py | 2 +- pandas/plotting/_matplotlib/boxplot.py | 4 +- pandas/plotting/_matplotlib/converter.py | 7 +- pandas/plotting/_matplotlib/core.py | 10 +-- pandas/plotting/_matplotlib/hist.py | 2 +- pandas/plotting/_matplotlib/misc.py | 15 ++-- pandas/plotting/_matplotlib/style.py | 6 +- pandas/plotting/_matplotlib/timeseries.py | 3 +- pandas/plotting/_matplotlib/tools.py | 6 +- pandas/tests/api/test_api.py | 6 +- pandas/tests/api/test_types.py | 2 +- pandas/tests/arithmetic/common.py | 3 +- pandas/tests/arithmetic/conftest.py | 2 +- pandas/tests/arithmetic/test_array_ops.py | 2 +- pandas/tests/arithmetic/test_datetime64.py | 2 +- pandas/tests/arithmetic/test_interval.py | 2 +- pandas/tests/arithmetic/test_numeric.py | 3 +- pandas/tests/arithmetic/test_object.py | 3 +- pandas/tests/arithmetic/test_period.py | 3 +- pandas/tests/arithmetic/test_timedelta64.py | 2 +- .../tests/arrays/boolean/test_arithmetic.py | 2 +- pandas/tests/arrays/boolean/test_astype.py | 2 +- .../tests/arrays/boolean/test_comparison.py | 2 +- .../tests/arrays/boolean/test_construction.py | 2 +- pandas/tests/arrays/boolean/test_function.py | 2 +- pandas/tests/arrays/boolean/test_indexing.py | 2 +- pandas/tests/arrays/boolean/test_logical.py | 2 +- pandas/tests/arrays/boolean/test_ops.py | 2 +- pandas/tests/arrays/categorical/test_algos.py | 2 +- .../arrays/categorical/test_analytics.py | 3 +- pandas/tests/arrays/categorical/test_api.py | 10 ++- .../arrays/categorical/test_constructors.py | 2 +- .../tests/arrays/categorical/test_dtypes.py | 10 ++- .../tests/arrays/categorical/test_indexing.py | 12 ++- .../tests/arrays/categorical/test_missing.py | 3 +- .../arrays/categorical/test_operators.py | 3 +- .../tests/arrays/categorical/test_replace.py | 2 +- .../tests/arrays/categorical/test_sorting.py | 3 +- .../tests/arrays/categorical/test_subclass.py | 3 +- .../tests/arrays/categorical/test_warnings.py | 2 +- .../tests/arrays/integer/test_arithmetic.py | 4 +- .../tests/arrays/integer/test_comparison.py | 2 +- pandas/tests/arrays/integer/test_concat.py | 2 +- .../tests/arrays/integer/test_construction.py | 2 +- pandas/tests/arrays/integer/test_dtypes.py | 2 +- pandas/tests/arrays/integer/test_function.py | 2 +- pandas/tests/arrays/integer/test_indexing.py | 2 +- pandas/tests/arrays/interval/test_interval.py | 9 ++- pandas/tests/arrays/interval/test_ops.py | 3 +- pandas/tests/arrays/masked/test_arithmetic.py | 2 +- .../tests/arrays/masked/test_arrow_compat.py | 5 +- pandas/tests/arrays/sparse/test_accessor.py | 5 +- .../tests/arrays/sparse/test_arithmetics.py | 2 +- pandas/tests/arrays/sparse/test_array.py | 5 +- .../arrays/sparse/test_combine_concat.py | 2 +- pandas/tests/arrays/sparse/test_libsparse.py | 7 +- pandas/tests/arrays/string_/test_string.py | 5 +- pandas/tests/arrays/test_array.py | 2 +- pandas/tests/arrays/test_datetimelike.py | 2 +- pandas/tests/arrays/test_datetimes.py | 2 +- pandas/tests/arrays/test_numpy.py | 2 +- pandas/tests/arrays/test_period.py | 7 +- pandas/tests/arrays/test_timedeltas.py | 2 +- pandas/tests/base/test_constructors.py | 3 +- pandas/tests/base/test_conversion.py | 3 +- pandas/tests/base/test_drop_duplicates.py | 2 +- pandas/tests/base/test_factorize.py | 2 +- pandas/tests/base/test_fillna.py | 4 +- pandas/tests/base/test_misc.py | 3 +- pandas/tests/base/test_transpose.py | 2 +- pandas/tests/base/test_unique.py | 2 +- pandas/tests/base/test_value_counts.py | 2 +- pandas/tests/computation/test_compat.py | 2 +- pandas/tests/computation/test_eval.py | 8 +- .../dtypes/cast/test_construct_from_scalar.py | 3 +- .../dtypes/cast/test_construct_ndarray.py | 2 +- pandas/tests/dtypes/cast/test_downcast.py | 3 +- pandas/tests/dtypes/cast/test_infer_dtype.py | 2 +- pandas/tests/dtypes/cast/test_upcast.py | 3 +- pandas/tests/dtypes/test_common.py | 7 +- pandas/tests/dtypes/test_concat.py | 12 ++- pandas/tests/dtypes/test_dtypes.py | 2 +- pandas/tests/dtypes/test_generic.py | 2 +- pandas/tests/dtypes/test_inference.py | 4 +- pandas/tests/dtypes/test_missing.py | 11 ++- pandas/tests/extension/arrow/test_bool.py | 2 +- pandas/tests/extension/base/base.py | 2 +- pandas/tests/extension/base/groupby.py | 2 +- pandas/tests/extension/base/interface.py | 2 +- pandas/tests/extension/base/methods.py | 2 +- pandas/tests/extension/base/missing.py | 2 +- pandas/tests/extension/base/ops.py | 2 +- pandas/tests/extension/base/reduce.py | 2 +- pandas/tests/extension/base/setitem.py | 2 +- .../tests/extension/decimal/test_decimal.py | 2 +- pandas/tests/extension/json/test_json.py | 2 +- pandas/tests/extension/test_boolean.py | 2 +- pandas/tests/extension/test_categorical.py | 3 +- pandas/tests/extension/test_common.py | 2 +- pandas/tests/extension/test_integer.py | 2 +- pandas/tests/extension/test_numpy.py | 2 +- pandas/tests/extension/test_sparse.py | 3 +- pandas/tests/frame/conftest.py | 3 +- pandas/tests/frame/indexing/test_at.py | 2 +- .../tests/frame/indexing/test_categorical.py | 3 +- pandas/tests/frame/indexing/test_datetime.py | 3 +- pandas/tests/frame/indexing/test_get.py | 3 +- pandas/tests/frame/indexing/test_indexing.py | 4 +- pandas/tests/frame/indexing/test_insert.py | 3 +- pandas/tests/frame/indexing/test_mask.py | 4 +- pandas/tests/frame/indexing/test_setitem.py | 11 ++- pandas/tests/frame/indexing/test_take.py | 2 +- pandas/tests/frame/indexing/test_where.py | 11 ++- pandas/tests/frame/indexing/test_xs.py | 3 +- pandas/tests/frame/methods/test_align.py | 3 +- pandas/tests/frame/methods/test_append.py | 3 +- pandas/tests/frame/methods/test_asfreq.py | 3 +- pandas/tests/frame/methods/test_asof.py | 2 +- pandas/tests/frame/methods/test_assign.py | 3 +- pandas/tests/frame/methods/test_astype.py | 2 +- pandas/tests/frame/methods/test_at_time.py | 3 +- .../tests/frame/methods/test_between_time.py | 3 +- pandas/tests/frame/methods/test_clip.py | 3 +- pandas/tests/frame/methods/test_combine.py | 2 +- .../tests/frame/methods/test_combine_first.py | 3 +- pandas/tests/frame/methods/test_compare.py | 2 +- pandas/tests/frame/methods/test_count.py | 3 +- pandas/tests/frame/methods/test_cov_corr.py | 6 +- pandas/tests/frame/methods/test_describe.py | 3 +- pandas/tests/frame/methods/test_diff.py | 3 +- pandas/tests/frame/methods/test_drop.py | 3 +- .../frame/methods/test_drop_duplicates.py | 3 +- pandas/tests/frame/methods/test_droplevel.py | 3 +- pandas/tests/frame/methods/test_duplicated.py | 3 +- pandas/tests/frame/methods/test_explode.py | 2 +- pandas/tests/frame/methods/test_filter.py | 3 +- .../frame/methods/test_first_and_last.py | 3 +- pandas/tests/frame/methods/test_head_tail.py | 3 +- .../tests/frame/methods/test_interpolate.py | 6 +- pandas/tests/frame/methods/test_isin.py | 3 +- pandas/tests/frame/methods/test_nlargest.py | 2 +- pandas/tests/frame/methods/test_pct_change.py | 3 +- pandas/tests/frame/methods/test_pop.py | 3 +- pandas/tests/frame/methods/test_quantile.py | 3 +- pandas/tests/frame/methods/test_rank.py | 6 +- .../tests/frame/methods/test_reindex_like.py | 3 +- pandas/tests/frame/methods/test_rename.py | 3 +- .../tests/frame/methods/test_rename_axis.py | 3 +- pandas/tests/frame/methods/test_replace.py | 3 +- .../tests/frame/methods/test_reset_index.py | 2 +- pandas/tests/frame/methods/test_round.py | 3 +- .../tests/frame/methods/test_select_dtypes.py | 3 +- pandas/tests/frame/methods/test_set_index.py | 11 ++- pandas/tests/frame/methods/test_shift.py | 3 +- pandas/tests/frame/methods/test_sort_index.py | 11 ++- .../tests/frame/methods/test_sort_values.py | 3 +- pandas/tests/frame/methods/test_to_dict.py | 3 +- pandas/tests/frame/methods/test_to_period.py | 3 +- pandas/tests/frame/methods/test_to_records.py | 2 +- .../tests/frame/methods/test_to_timestamp.py | 2 +- pandas/tests/frame/methods/test_transpose.py | 2 +- pandas/tests/frame/methods/test_truncate.py | 2 +- pandas/tests/frame/methods/test_tz_convert.py | 3 +- .../tests/frame/methods/test_tz_localize.py | 3 +- pandas/tests/frame/methods/test_update.py | 3 +- .../tests/frame/methods/test_value_counts.py | 2 +- pandas/tests/frame/test_alter_axes.py | 2 +- pandas/tests/frame/test_analytics.py | 12 ++- pandas/tests/frame/test_api.py | 11 ++- pandas/tests/frame/test_apply.py | 11 ++- pandas/tests/frame/test_arithmetic.py | 5 +- .../tests/frame/test_axis_select_reindex.py | 12 ++- pandas/tests/frame/test_block_internals.py | 2 +- pandas/tests/frame/test_combine_concat.py | 3 +- pandas/tests/frame/test_constructors.py | 6 +- pandas/tests/frame/test_cumulative.py | 4 +- pandas/tests/frame/test_dtypes.py | 10 ++- pandas/tests/frame/test_join.py | 3 +- pandas/tests/frame/test_missing.py | 3 +- pandas/tests/frame/test_nonunique_indexes.py | 3 +- pandas/tests/frame/test_operators.py | 3 +- pandas/tests/frame/test_period.py | 3 +- pandas/tests/frame/test_query_eval.py | 6 +- pandas/tests/frame/test_repr_info.py | 4 +- pandas/tests/frame/test_reshape.py | 12 ++- .../frame/test_sort_values_level_as_str.py | 3 +- pandas/tests/frame/test_subclass.py | 6 +- pandas/tests/frame/test_timeseries.py | 3 +- pandas/tests/frame/test_timezones.py | 3 +- pandas/tests/frame/test_to_csv.py | 4 +- pandas/tests/generic/methods/test_dot.py | 3 +- .../generic/methods/test_first_valid_index.py | 3 +- .../generic/methods/test_reorder_levels.py | 3 +- pandas/tests/generic/methods/test_set_axis.py | 3 +- pandas/tests/generic/test_frame.py | 3 +- pandas/tests/generic/test_generic.py | 5 +- pandas/tests/generic/test_series.py | 3 +- pandas/tests/generic/test_to_xarray.py | 6 +- .../tests/groupby/aggregate/test_aggregate.py | 3 +- pandas/tests/groupby/aggregate/test_cython.py | 13 +++- pandas/tests/groupby/aggregate/test_numba.py | 5 +- pandas/tests/groupby/aggregate/test_other.py | 3 +- pandas/tests/groupby/conftest.py | 3 +- pandas/tests/groupby/test_allowlist.py | 4 +- pandas/tests/groupby/test_apply.py | 3 +- pandas/tests/groupby/test_apply_mutate.py | 2 +- pandas/tests/groupby/test_bin_groupby.py | 3 +- pandas/tests/groupby/test_categorical.py | 2 +- pandas/tests/groupby/test_counting.py | 2 +- pandas/tests/groupby/test_filters.py | 3 +- pandas/tests/groupby/test_function.py | 14 +++- pandas/tests/groupby/test_groupby.py | 14 +++- pandas/tests/groupby/test_groupby_dropna.py | 2 +- pandas/tests/groupby/test_groupby_subclass.py | 3 +- pandas/tests/groupby/test_grouping.py | 3 +- pandas/tests/groupby/test_index_as_string.py | 2 +- pandas/tests/groupby/test_nth.py | 3 +- pandas/tests/groupby/test_nunique.py | 11 ++- pandas/tests/groupby/test_pipe.py | 3 +- pandas/tests/groupby/test_quantile.py | 3 +- pandas/tests/groupby/test_rank.py | 3 +- pandas/tests/groupby/test_sample.py | 3 +- pandas/tests/groupby/test_size.py | 3 +- pandas/tests/groupby/test_timegrouper.py | 3 +- pandas/tests/groupby/test_value_counts.py | 12 ++- pandas/tests/groupby/transform/test_numba.py | 5 +- .../tests/groupby/transform/test_transform.py | 2 +- .../tests/indexes/base_class/test_reshape.py | 3 +- .../tests/indexes/base_class/test_setops.py | 3 +- .../tests/indexes/categorical/test_astype.py | 10 ++- .../indexes/categorical/test_category.py | 3 +- .../indexes/categorical/test_constructors.py | 9 ++- .../tests/indexes/categorical/test_fillna.py | 3 +- .../tests/indexes/categorical/test_formats.py | 2 +- .../indexes/categorical/test_indexing.py | 3 +- pandas/tests/indexes/categorical/test_map.py | 3 +- .../tests/indexes/categorical/test_reindex.py | 3 +- pandas/tests/indexes/common.py | 2 +- pandas/tests/indexes/datetimelike.py | 2 +- pandas/tests/indexes/datetimes/test_astype.py | 2 +- .../indexes/datetimes/test_constructors.py | 11 ++- .../indexes/datetimes/test_date_range.py | 13 +++- .../tests/indexes/datetimes/test_datetime.py | 12 ++- .../indexes/datetimes/test_datetimelike.py | 3 +- pandas/tests/indexes/datetimes/test_delete.py | 3 +- pandas/tests/indexes/datetimes/test_fillna.py | 2 +- .../tests/indexes/datetimes/test_formats.py | 3 +- .../tests/indexes/datetimes/test_indexing.py | 3 +- pandas/tests/indexes/datetimes/test_insert.py | 3 +- pandas/tests/indexes/datetimes/test_join.py | 10 ++- pandas/tests/indexes/datetimes/test_map.py | 3 +- pandas/tests/indexes/datetimes/test_misc.py | 3 +- pandas/tests/indexes/datetimes/test_ops.py | 2 +- .../indexes/datetimes/test_partial_slicing.py | 3 +- pandas/tests/indexes/datetimes/test_pickle.py | 3 +- .../indexes/datetimes/test_scalar_compat.py | 3 +- pandas/tests/indexes/datetimes/test_setops.py | 5 +- pandas/tests/indexes/datetimes/test_shift.py | 3 +- pandas/tests/indexes/datetimes/test_snap.py | 3 +- .../tests/indexes/datetimes/test_timezones.py | 4 +- .../tests/indexes/datetimes/test_to_period.py | 2 +- pandas/tests/indexes/interval/test_astype.py | 2 +- pandas/tests/indexes/interval/test_base.py | 3 +- .../indexes/interval/test_constructors.py | 4 +- pandas/tests/indexes/interval/test_formats.py | 10 ++- .../tests/indexes/interval/test_indexing.py | 2 +- .../tests/indexes/interval/test_interval.py | 4 +- .../indexes/interval/test_interval_range.py | 2 +- .../indexes/interval/test_interval_tree.py | 3 +- pandas/tests/indexes/interval/test_setops.py | 3 +- pandas/tests/indexes/multi/test_analytics.py | 3 +- pandas/tests/indexes/multi/test_astype.py | 2 +- pandas/tests/indexes/multi/test_compat.py | 3 +- .../tests/indexes/multi/test_constructors.py | 3 +- pandas/tests/indexes/multi/test_conversion.py | 3 +- pandas/tests/indexes/multi/test_copy.py | 3 +- pandas/tests/indexes/multi/test_drop.py | 3 +- pandas/tests/indexes/multi/test_duplicates.py | 3 +- .../tests/indexes/multi/test_equivalence.py | 3 +- pandas/tests/indexes/multi/test_formats.py | 3 +- .../indexes/multi/test_get_level_values.py | 10 ++- pandas/tests/indexes/multi/test_get_set.py | 3 +- pandas/tests/indexes/multi/test_indexing.py | 3 +- pandas/tests/indexes/multi/test_integrity.py | 3 +- pandas/tests/indexes/multi/test_isin.py | 3 +- pandas/tests/indexes/multi/test_join.py | 3 +- pandas/tests/indexes/multi/test_missing.py | 3 +- pandas/tests/indexes/multi/test_names.py | 3 +- .../indexes/multi/test_partial_indexing.py | 3 +- pandas/tests/indexes/multi/test_reindex.py | 3 +- pandas/tests/indexes/multi/test_reshape.py | 3 +- pandas/tests/indexes/multi/test_setops.py | 3 +- pandas/tests/indexes/multi/test_sorting.py | 10 ++- pandas/tests/indexes/multi/test_take.py | 2 +- pandas/tests/indexes/numeric/test_astype.py | 3 +- pandas/tests/indexes/numeric/test_indexing.py | 3 +- pandas/tests/indexes/numeric/test_join.py | 3 +- pandas/tests/indexes/period/test_asfreq.py | 3 +- pandas/tests/indexes/period/test_astype.py | 2 +- .../tests/indexes/period/test_constructors.py | 2 +- pandas/tests/indexes/period/test_factorize.py | 3 +- pandas/tests/indexes/period/test_fillna.py | 3 +- pandas/tests/indexes/period/test_formats.py | 3 +- pandas/tests/indexes/period/test_indexing.py | 2 +- pandas/tests/indexes/period/test_join.py | 3 +- pandas/tests/indexes/period/test_ops.py | 3 +- .../indexes/period/test_partial_slicing.py | 3 +- pandas/tests/indexes/period/test_period.py | 4 +- .../tests/indexes/period/test_period_range.py | 3 +- .../indexes/period/test_scalar_compat.py | 4 +- .../tests/indexes/period/test_searchsorted.py | 3 +- pandas/tests/indexes/period/test_setops.py | 3 +- pandas/tests/indexes/period/test_shift.py | 3 +- .../tests/indexes/period/test_to_timestamp.py | 2 +- pandas/tests/indexes/period/test_tools.py | 3 +- .../tests/indexes/ranges/test_constructors.py | 3 +- pandas/tests/indexes/ranges/test_indexing.py | 3 +- pandas/tests/indexes/ranges/test_join.py | 3 +- pandas/tests/indexes/ranges/test_range.py | 3 +- pandas/tests/indexes/ranges/test_setops.py | 3 +- pandas/tests/indexes/test_any_index.py | 2 +- pandas/tests/indexes/test_base.py | 4 +- pandas/tests/indexes/test_common.py | 3 +- pandas/tests/indexes/test_engines.py | 2 +- pandas/tests/indexes/test_index_new.py | 2 +- pandas/tests/indexes/test_indexing.py | 3 +- pandas/tests/indexes/test_numeric.py | 3 +- pandas/tests/indexes/test_numpy_compat.py | 2 +- pandas/tests/indexes/test_setops.py | 3 +- .../tests/indexes/timedeltas/test_astype.py | 2 +- .../indexes/timedeltas/test_constructors.py | 9 ++- .../tests/indexes/timedeltas/test_delete.py | 3 +- .../tests/indexes/timedeltas/test_fillna.py | 3 +- .../tests/indexes/timedeltas/test_indexing.py | 10 ++- .../tests/indexes/timedeltas/test_insert.py | 3 +- pandas/tests/indexes/timedeltas/test_join.py | 3 +- pandas/tests/indexes/timedeltas/test_ops.py | 3 +- .../timedeltas/test_partial_slicing.py | 3 +- .../indexes/timedeltas/test_scalar_compat.py | 11 ++- .../indexes/timedeltas/test_searchsorted.py | 3 +- .../tests/indexes/timedeltas/test_setops.py | 3 +- pandas/tests/indexes/timedeltas/test_shift.py | 3 +- .../indexes/timedeltas/test_timedelta.py | 2 +- .../timedeltas/test_timedelta_range.py | 3 +- pandas/tests/indexing/common.py | 11 ++- .../tests/indexing/interval/test_interval.py | 3 +- .../indexing/interval/test_interval_new.py | 3 +- .../multiindex/test_chaining_and_caching.py | 5 +- .../tests/indexing/multiindex/test_getitem.py | 3 +- pandas/tests/indexing/multiindex/test_iloc.py | 3 +- .../indexing/multiindex/test_indexing_slow.py | 5 +- .../tests/indexing/multiindex/test_insert.py | 3 +- pandas/tests/indexing/multiindex/test_ix.py | 3 +- pandas/tests/indexing/multiindex/test_loc.py | 3 +- .../indexing/multiindex/test_multiindex.py | 5 +- .../tests/indexing/multiindex/test_partial.py | 3 +- .../tests/indexing/multiindex/test_setitem.py | 14 +++- .../tests/indexing/multiindex/test_slice.py | 3 +- .../tests/indexing/multiindex/test_sorted.py | 3 +- pandas/tests/indexing/multiindex/test_xs.py | 13 +++- pandas/tests/indexing/test_callable.py | 2 +- pandas/tests/indexing/test_categorical.py | 2 +- .../indexing/test_chaining_and_caching.py | 12 ++- pandas/tests/indexing/test_check_indexer.py | 2 +- pandas/tests/indexing/test_coercion.py | 4 +- pandas/tests/indexing/test_datetime.py | 3 +- pandas/tests/indexing/test_floats.py | 11 ++- pandas/tests/indexing/test_iloc.py | 4 +- pandas/tests/indexing/test_indexing.py | 4 +- pandas/tests/indexing/test_indexing_slow.py | 3 +- pandas/tests/indexing/test_loc.py | 3 +- pandas/tests/indexing/test_na_indexing.py | 2 +- pandas/tests/indexing/test_partial.py | 13 +++- pandas/tests/indexing/test_scalar.py | 11 ++- pandas/tests/indexing/test_timedelta.py | 2 +- pandas/tests/internals/test_internals.py | 13 +++- pandas/tests/io/conftest.py | 2 +- pandas/tests/io/excel/conftest.py | 5 +- pandas/tests/io/excel/test_odf.py | 2 +- pandas/tests/io/excel/test_odswriter.py | 2 +- pandas/tests/io/excel/test_openpyxl.py | 3 +- pandas/tests/io/excel/test_readers.py | 6 +- pandas/tests/io/excel/test_style.py | 3 +- pandas/tests/io/excel/test_writers.py | 6 +- pandas/tests/io/excel/test_xlrd.py | 2 +- pandas/tests/io/excel/test_xlsxwriter.py | 3 +- pandas/tests/io/excel/test_xlwt.py | 3 +- pandas/tests/io/formats/test_css.py | 2 +- .../tests/io/formats/test_eng_formatting.py | 5 +- pandas/tests/io/formats/test_format.py | 6 +- pandas/tests/io/formats/test_info.py | 2 +- pandas/tests/io/formats/test_printing.py | 5 +- pandas/tests/io/formats/test_style.py | 6 +- pandas/tests/io/formats/test_to_csv.py | 3 +- pandas/tests/io/formats/test_to_excel.py | 3 +- pandas/tests/io/formats/test_to_html.py | 5 +- pandas/tests/io/formats/test_to_latex.py | 3 +- pandas/tests/io/json/test_compression.py | 5 +- .../tests/io/json/test_deprecated_kwargs.py | 3 +- .../tests/io/json/test_json_table_schema.py | 3 +- pandas/tests/io/json/test_normalize.py | 3 +- pandas/tests/io/json/test_pandas.py | 12 ++- pandas/tests/io/json/test_readlines.py | 3 +- pandas/tests/io/json/test_ujson.py | 16 +++- pandas/tests/io/parser/test_c_parser_only.py | 6 +- pandas/tests/io/parser/test_comment.py | 3 +- pandas/tests/io/parser/test_common.py | 5 +- pandas/tests/io/parser/test_compression.py | 3 +- pandas/tests/io/parser/test_converters.py | 3 +- pandas/tests/io/parser/test_dialect.py | 4 +- pandas/tests/io/parser/test_dtypes.py | 12 ++- pandas/tests/io/parser/test_encoding.py | 4 +- pandas/tests/io/parser/test_header.py | 4 +- pandas/tests/io/parser/test_index_col.py | 3 +- pandas/tests/io/parser/test_mangle_dupes.py | 3 +- pandas/tests/io/parser/test_multi_thread.py | 3 +- pandas/tests/io/parser/test_na_values.py | 3 +- pandas/tests/io/parser/test_network.py | 6 +- pandas/tests/io/parser/test_parse_dates.py | 6 +- .../io/parser/test_python_parser_only.py | 4 +- pandas/tests/io/parser/test_quoting.py | 4 +- pandas/tests/io/parser/test_read_fwf.py | 4 +- pandas/tests/io/parser/test_skiprows.py | 4 +- pandas/tests/io/parser/test_textreader.py | 5 +- pandas/tests/io/parser/test_unsupported.py | 4 +- pandas/tests/io/parser/test_usecols.py | 3 +- pandas/tests/io/pytables/conftest.py | 2 +- pandas/tests/io/pytables/test_compat.py | 2 +- pandas/tests/io/pytables/test_complex.py | 6 +- .../io/pytables/test_pytables_missing.py | 5 +- pandas/tests/io/pytables/test_store.py | 4 +- pandas/tests/io/pytables/test_timezones.py | 13 +++- pandas/tests/io/sas/test_sas.py | 3 +- pandas/tests/io/sas/test_sas7bdat.py | 4 +- pandas/tests/io/sas/test_xport.py | 2 +- pandas/tests/io/test_clipboard.py | 3 +- pandas/tests/io/test_common.py | 6 +- pandas/tests/io/test_compression.py | 4 +- pandas/tests/io/test_date_converters.py | 4 +- pandas/tests/io/test_feather.py | 5 +- pandas/tests/io/test_fsspec.py | 5 +- pandas/tests/io/test_gcs.py | 12 +-- pandas/tests/io/test_html.py | 13 +++- pandas/tests/io/test_orc.py | 3 +- pandas/tests/io/test_parquet.py | 9 +-- pandas/tests/io/test_pickle.py | 5 +- pandas/tests/io/test_spss.py | 2 +- pandas/tests/io/test_sql.py | 9 +-- pandas/tests/io/test_stata.py | 2 +- pandas/tests/plotting/common.py | 15 ++-- pandas/tests/plotting/test_backend.py | 3 +- pandas/tests/plotting/test_boxplot_method.py | 16 ++-- pandas/tests/plotting/test_common.py | 3 +- pandas/tests/plotting/test_converter.py | 7 +- pandas/tests/plotting/test_datetimelike.py | 11 ++- pandas/tests/plotting/test_frame.py | 40 +++++----- pandas/tests/plotting/test_groupby.py | 8 +- pandas/tests/plotting/test_hist_method.py | 10 +-- pandas/tests/plotting/test_misc.py | 19 +++-- pandas/tests/plotting/test_series.py | 15 ++-- pandas/tests/reductions/test_reductions.py | 2 +- .../tests/reductions/test_stat_reductions.py | 6 +- pandas/tests/resample/test_base.py | 3 +- pandas/tests/resample/test_datetime_index.py | 5 +- pandas/tests/resample/test_deprecated.py | 3 +- pandas/tests/resample/test_period_index.py | 5 +- pandas/tests/resample/test_resample_api.py | 3 +- .../tests/resample/test_resampler_grouper.py | 3 +- pandas/tests/resample/test_time_grouper.py | 3 +- pandas/tests/resample/test_timedelta.py | 3 +- pandas/tests/reshape/merge/test_join.py | 3 +- pandas/tests/reshape/merge/test_merge.py | 2 +- pandas/tests/reshape/merge/test_merge_asof.py | 3 +- .../merge/test_merge_index_as_string.py | 3 +- .../tests/reshape/merge/test_merge_ordered.py | 3 +- pandas/tests/reshape/merge/test_multi.py | 3 +- pandas/tests/reshape/test_concat.py | 2 +- pandas/tests/reshape/test_crosstab.py | 11 ++- pandas/tests/reshape/test_cut.py | 4 +- pandas/tests/reshape/test_get_dummies.py | 10 ++- pandas/tests/reshape/test_melt.py | 3 +- pandas/tests/reshape/test_pivot.py | 2 +- pandas/tests/reshape/test_pivot_multilevel.py | 3 +- pandas/tests/reshape/test_qcut.py | 2 +- .../tests/reshape/test_union_categoricals.py | 3 +- pandas/tests/reshape/test_util.py | 3 +- pandas/tests/scalar/interval/test_interval.py | 2 +- pandas/tests/scalar/period/test_period.py | 3 +- pandas/tests/scalar/test_na_scalar.py | 2 +- pandas/tests/scalar/test_nat.py | 4 +- .../tests/scalar/timedelta/test_arithmetic.py | 11 ++- .../tests/scalar/timedelta/test_timedelta.py | 3 +- .../tests/scalar/timestamp/test_arithmetic.py | 2 +- .../scalar/timestamp/test_comparisons.py | 3 +- .../tests/scalar/timestamp/test_timestamp.py | 6 +- .../tests/scalar/timestamp/test_timezones.py | 2 +- .../tests/scalar/timestamp/test_unary_ops.py | 4 +- pandas/tests/series/conftest.py | 2 +- .../tests/series/indexing/test_alter_index.py | 3 +- pandas/tests/series/indexing/test_boolean.py | 3 +- pandas/tests/series/indexing/test_callable.py | 2 +- pandas/tests/series/indexing/test_datetime.py | 16 ++-- pandas/tests/series/indexing/test_delitem.py | 3 +- pandas/tests/series/indexing/test_get.py | 3 +- pandas/tests/series/indexing/test_getitem.py | 3 +- pandas/tests/series/indexing/test_iloc.py | 3 +- pandas/tests/series/indexing/test_indexing.py | 3 +- pandas/tests/series/indexing/test_loc.py | 3 +- pandas/tests/series/indexing/test_mask.py | 3 +- pandas/tests/series/indexing/test_numeric.py | 3 +- pandas/tests/series/indexing/test_take.py | 3 +- pandas/tests/series/indexing/test_where.py | 3 +- pandas/tests/series/methods/test_align.py | 3 +- pandas/tests/series/methods/test_append.py | 11 ++- pandas/tests/series/methods/test_argsort.py | 3 +- pandas/tests/series/methods/test_asfreq.py | 10 ++- pandas/tests/series/methods/test_asof.py | 5 +- pandas/tests/series/methods/test_astype.py | 3 +- pandas/tests/series/methods/test_at_time.py | 3 +- pandas/tests/series/methods/test_between.py | 3 +- .../tests/series/methods/test_between_time.py | 5 +- pandas/tests/series/methods/test_clip.py | 3 +- pandas/tests/series/methods/test_combine.py | 3 +- .../series/methods/test_combine_first.py | 3 +- pandas/tests/series/methods/test_compare.py | 2 +- .../series/methods/test_convert_dtypes.py | 2 +- pandas/tests/series/methods/test_count.py | 3 +- pandas/tests/series/methods/test_cov_corr.py | 10 +-- pandas/tests/series/methods/test_describe.py | 3 +- pandas/tests/series/methods/test_diff.py | 3 +- pandas/tests/series/methods/test_drop.py | 3 +- .../series/methods/test_drop_duplicates.py | 3 +- pandas/tests/series/methods/test_droplevel.py | 3 +- .../tests/series/methods/test_duplicated.py | 3 +- pandas/tests/series/methods/test_explode.py | 2 +- pandas/tests/series/methods/test_fillna.py | 12 ++- .../series/methods/test_first_and_last.py | 4 +- pandas/tests/series/methods/test_head_tail.py | 2 +- .../tests/series/methods/test_interpolate.py | 6 +- pandas/tests/series/methods/test_isin.py | 3 +- pandas/tests/series/methods/test_nlargest.py | 3 +- .../tests/series/methods/test_pct_change.py | 3 +- pandas/tests/series/methods/test_quantile.py | 3 +- pandas/tests/series/methods/test_rank.py | 5 +- .../tests/series/methods/test_reindex_like.py | 3 +- pandas/tests/series/methods/test_rename.py | 3 +- .../tests/series/methods/test_rename_axis.py | 3 +- pandas/tests/series/methods/test_replace.py | 2 +- .../tests/series/methods/test_reset_index.py | 3 +- pandas/tests/series/methods/test_round.py | 3 +- .../tests/series/methods/test_searchsorted.py | 3 +- pandas/tests/series/methods/test_shift.py | 2 +- .../tests/series/methods/test_sort_index.py | 3 +- .../tests/series/methods/test_sort_values.py | 3 +- pandas/tests/series/methods/test_to_dict.py | 3 +- pandas/tests/series/methods/test_to_period.py | 2 +- .../tests/series/methods/test_to_timestamp.py | 11 ++- pandas/tests/series/methods/test_truncate.py | 3 +- .../tests/series/methods/test_tz_convert.py | 3 +- .../tests/series/methods/test_tz_localize.py | 3 +- pandas/tests/series/methods/test_unstack.py | 3 +- pandas/tests/series/methods/test_update.py | 3 +- .../tests/series/methods/test_value_counts.py | 3 +- pandas/tests/series/test_alter_axes.py | 3 +- pandas/tests/series/test_analytics.py | 6 +- pandas/tests/series/test_api.py | 4 +- pandas/tests/series/test_apply.py | 3 +- pandas/tests/series/test_arithmetic.py | 13 +++- pandas/tests/series/test_constructors.py | 4 +- pandas/tests/series/test_cumulative.py | 2 +- pandas/tests/series/test_datetime_values.py | 4 +- pandas/tests/series/test_dtypes.py | 2 +- pandas/tests/series/test_duplicates.py | 3 +- pandas/tests/series/test_internals.py | 3 +- pandas/tests/series/test_io.py | 3 +- pandas/tests/series/test_missing.py | 2 +- pandas/tests/series/test_operators.py | 3 +- pandas/tests/series/test_period.py | 3 +- pandas/tests/series/test_repr.py | 2 +- pandas/tests/series/test_subclass.py | 2 +- pandas/tests/series/test_timeseries.py | 10 ++- pandas/tests/series/test_timezones.py | 3 +- pandas/tests/series/test_ufunc.py | 2 +- pandas/tests/test_algos.py | 7 +- pandas/tests/test_common.py | 5 +- pandas/tests/test_downstream.py | 14 ++-- pandas/tests/test_expressions.py | 2 +- pandas/tests/test_join.py | 3 +- pandas/tests/test_lib.py | 3 +- pandas/tests/test_multilevel.py | 3 +- pandas/tests/test_nanops.py | 8 +- pandas/tests/test_optional_dependency.py | 2 +- pandas/tests/test_register_accessor.py | 2 +- pandas/tests/test_sorting.py | 5 +- pandas/tests/test_strings.py | 14 +++- pandas/tests/test_take.py | 4 +- pandas/tests/tools/test_to_datetime.py | 5 +- pandas/tests/tools/test_to_numeric.py | 3 +- pandas/tests/tools/test_to_time.py | 6 +- pandas/tests/tools/test_to_timedelta.py | 3 +- .../tseries/frequencies/test_inference.py | 14 +++- pandas/tests/tseries/holiday/test_calendar.py | 3 +- pandas/tests/tseries/holiday/test_holiday.py | 2 +- pandas/tests/tseries/offsets/conftest.py | 2 +- pandas/tests/tseries/offsets/test_fiscal.py | 3 +- pandas/tests/tseries/offsets/test_offsets.py | 7 +- pandas/tests/tseries/offsets/test_ticks.py | 3 +- pandas/tests/tslibs/test_array_to_datetime.py | 3 +- pandas/tests/tslibs/test_conversion.py | 3 +- pandas/tests/tslibs/test_fields.py | 2 +- pandas/tests/tslibs/test_liboffsets.py | 2 +- pandas/tests/tslibs/test_parsing.py | 4 +- pandas/tests/util/test_assert_almost_equal.py | 3 +- .../util/test_assert_categorical_equal.py | 3 +- .../util/test_assert_extension_array_equal.py | 2 +- pandas/tests/util/test_assert_frame_equal.py | 3 +- pandas/tests/util/test_assert_index_equal.py | 3 +- .../util/test_assert_interval_array_equal.py | 3 +- .../util/test_assert_numpy_array_equal.py | 3 +- .../util/test_assert_produces_warning.py | 2 +- pandas/tests/util/test_assert_series_equal.py | 3 +- pandas/tests/util/test_deprecate.py | 2 +- pandas/tests/util/test_deprecate_kwarg.py | 2 +- .../test_deprecate_nonkeyword_arguments.py | 3 +- pandas/tests/util/test_hashing.py | 3 +- pandas/tests/util/test_safe_import.py | 2 +- pandas/tests/util/test_util.py | 4 +- pandas/tests/window/common.py | 3 +- pandas/tests/window/conftest.py | 3 +- .../test_moments_consistency_expanding.py | 3 +- .../test_moments_consistency_rolling.py | 6 +- .../tests/window/moments/test_moments_ewm.py | 3 +- .../window/moments/test_moments_rolling.py | 8 +- pandas/tests/window/test_api.py | 6 +- pandas/tests/window/test_apply.py | 13 +++- pandas/tests/window/test_base_indexer.py | 3 +- pandas/tests/window/test_dtypes.py | 3 +- pandas/tests/window/test_ewm.py | 3 +- pandas/tests/window/test_expanding.py | 3 +- pandas/tests/window/test_grouper.py | 3 +- pandas/tests/window/test_numba.py | 6 +- pandas/tests/window/test_pairwise.py | 3 +- pandas/tests/window/test_rolling.py | 5 +- pandas/tests/window/test_timeseries_window.py | 4 +- pandas/tests/window/test_window.py | 2 +- pandas/tseries/api.py | 2 +- pandas/util/_doctools.py | 7 +- .../tests/test_validate_unwanted_patterns.py | 1 - 776 files changed, 2024 insertions(+), 1982 deletions(-) diff --git a/asv_bench/benchmarks/arithmetic.py b/asv_bench/benchmarks/arithmetic.py index 3ef6ab6209ea7..708f9be5846b4 100644 --- a/asv_bench/benchmarks/arithmetic.py +++ b/asv_bench/benchmarks/arithmetic.py @@ -4,16 +4,22 @@ import numpy as np import pandas as pd -from pandas import DataFrame, Series, Timestamp, date_range, to_timedelta -import pandas._testing as tm +from pandas import ( + DataFrame, + Series, + Timestamp, + _testing as tm, + date_range, + to_timedelta, +) from pandas.core.algorithms import checked_add_with_arr from .pandas_vb_common import numeric_dtypes try: - import pandas.core.computation.expressions as expr + from pandas.core.computation import expressions as expr except ImportError: - import pandas.computation.expressions as expr + from pandas.computation import expressions as expr try: import pandas.tseries.holiday except ImportError: diff --git a/asv_bench/benchmarks/eval.py b/asv_bench/benchmarks/eval.py index cbab9fdc9c0ba..07ecfabb3b453 100644 --- a/asv_bench/benchmarks/eval.py +++ b/asv_bench/benchmarks/eval.py @@ -3,9 +3,9 @@ import pandas as pd try: - import pandas.core.computation.expressions as expr + from pandas.core.computation import expressions as expr except ImportError: - import pandas.computation.expressions as expr + from pandas.computation import expressions as expr class Eval: diff --git a/asv_bench/benchmarks/frame_ctor.py b/asv_bench/benchmarks/frame_ctor.py index dc6f45f810f3d..e0a2257b0ca1f 100644 --- a/asv_bench/benchmarks/frame_ctor.py +++ b/asv_bench/benchmarks/frame_ctor.py @@ -6,7 +6,7 @@ from .pandas_vb_common import tm try: - from pandas.tseries.offsets import Nano, Hour + from pandas.tseries.offsets import Hour, Nano except ImportError: # For compatibility with older versions from pandas.core.datetools import * # noqa diff --git a/asv_bench/benchmarks/gil.py b/asv_bench/benchmarks/gil.py index e266d871f5bc6..5d9070de92ec7 100644 --- a/asv_bench/benchmarks/gil.py +++ b/asv_bench/benchmarks/gil.py @@ -7,14 +7,14 @@ try: from pandas import ( - rolling_median, + rolling_kurt, + rolling_max, rolling_mean, + rolling_median, rolling_min, - rolling_max, - rolling_var, rolling_skew, - rolling_kurt, rolling_std, + rolling_var, ) have_rolling_methods = True diff --git a/asv_bench/benchmarks/io/parsers.py b/asv_bench/benchmarks/io/parsers.py index ec3eddfff7184..5390056ba36f2 100644 --- a/asv_bench/benchmarks/io/parsers.py +++ b/asv_bench/benchmarks/io/parsers.py @@ -2,8 +2,8 @@ try: from pandas._libs.tslibs.parsing import ( - concat_date_cols, _does_string_look_like_datetime, + concat_date_cols, ) except ImportError: # Avoid whole benchmark suite import failure on asv (currently 0.4) diff --git a/asv_bench/benchmarks/pandas_vb_common.py b/asv_bench/benchmarks/pandas_vb_common.py index 23286343d7367..5ee3fdcdbb34b 100644 --- a/asv_bench/benchmarks/pandas_vb_common.py +++ b/asv_bench/benchmarks/pandas_vb_common.py @@ -15,9 +15,9 @@ # Compatibility import for the testing module try: - import pandas._testing as tm # noqa + from pandas import _testing as tm # noqa except ImportError: - import pandas.util.testing as tm # noqa + from pandas.util import testing as tm # noqa numeric_dtypes = [ diff --git a/ci/code_checks.sh b/ci/code_checks.sh index 7b12de387d648..69ce0f1adce22 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -121,7 +121,7 @@ if [[ -z "$CHECK" || "$CHECK" == "lint" ]]; then # Imports - Check formatting using isort see setup.cfg for settings MSG='Check import format using isort' ; echo $MSG - ISORT_CMD="isort --quiet --recursive --check-only pandas asv_bench scripts" + ISORT_CMD="isort --quiet --check-only pandas asv_bench scripts" if [[ "$GITHUB_ACTIONS" == "true" ]]; then eval $ISORT_CMD | awk '{print "##[error]" $0}'; RET=$(($RET + ${PIPESTATUS[0]})) else diff --git a/doc/source/development/contributing.rst b/doc/source/development/contributing.rst index b85e9403038ab..3eed25cfdfb7f 100644 --- a/doc/source/development/contributing.rst +++ b/doc/source/development/contributing.rst @@ -751,7 +751,7 @@ Imports are alphabetically sorted within these sections. As part of :ref:`Continuous Integration ` checks we run:: - isort --recursive --check-only pandas + isort --check-only pandas to check that imports are correctly formatted as per the `setup.cfg`. diff --git a/environment.yml b/environment.yml index 80dbffebf6b9d..20152efba66c1 100644 --- a/environment.yml +++ b/environment.yml @@ -20,7 +20,7 @@ dependencies: - flake8<3.8.0 # temporary pin, GH#34150 - flake8-comprehensions>=3.1.0 # used by flake8, linting of unnecessary comprehensions - flake8-rst>=0.6.0,<=0.7.0 # linting of code blocks in rst files - - isort=4.3.21 # check that imports are in the right order + - isort=5.0.4 # check that imports are in the right order - mypy=0.730 - pycodestyle # used by flake8 diff --git a/pandas/_config/config.py b/pandas/_config/config.py index f5e16cddeb04c..b476a518790c9 100644 --- a/pandas/_config/config.py +++ b/pandas/_config/config.py @@ -47,7 +47,6 @@ which can save developers some typing, see the docstring. """ - from collections import namedtuple from contextlib import ContextDecorator, contextmanager import re @@ -442,8 +441,8 @@ def register_option( ValueError if `validator` is specified and `defval` is not a valid value. """ - import tokenize import keyword + import tokenize key = key.lower() @@ -660,8 +659,8 @@ def _build_option_description(k: str) -> str: def pp_options_list(keys: Iterable[str], width=80, _print: bool = False): """ Builds a concise listing of available options, grouped by prefix """ - from textwrap import wrap from itertools import groupby + from textwrap import wrap def pp(name: str, ks: Iterable[str]) -> List[str]: pfx = "- " + name + ".[" if name else "" diff --git a/pandas/_libs/algos.pyx b/pandas/_libs/algos.pyx index 6b6ead795584f..4db14114c716d 100644 --- a/pandas/_libs/algos.pyx +++ b/pandas/_libs/algos.pyx @@ -1,11 +1,12 @@ import cython from cython import Py_ssize_t -from libc.stdlib cimport malloc, free -from libc.string cimport memmove from libc.math cimport fabs, sqrt +from libc.stdlib cimport free, malloc +from libc.string cimport memmove import numpy as np + cimport numpy as cnp from numpy cimport ( NPY_FLOAT32, @@ -31,12 +32,11 @@ from numpy cimport ( uint32_t, uint64_t, ) -cnp.import_array() +cnp.import_array() -cimport pandas._libs.util as util -from pandas._libs.util cimport numeric, get_nat +from pandas._libs cimport util as util from pandas._libs.khash cimport ( kh_destroy_int64, kh_get_int64, @@ -46,9 +46,9 @@ from pandas._libs.khash cimport ( kh_resize_int64, khiter_t, ) +from pandas._libs.util cimport get_nat, numeric - -import pandas._libs.missing as missing +from pandas._libs import missing as missing cdef: float64_t FP_ERR = 1e-13 diff --git a/pandas/_libs/groupby.pyx b/pandas/_libs/groupby.pyx index 7c57e6ee9dbfd..38cb973d6dde9 100644 --- a/pandas/_libs/groupby.pyx +++ b/pandas/_libs/groupby.pyx @@ -1,27 +1,51 @@ import cython from cython import Py_ssize_t -from cython cimport floating -from libc.stdlib cimport malloc, free +from cython cimport floating +from libc.stdlib cimport free, malloc import numpy as np + cimport numpy as cnp -from numpy cimport (ndarray, - int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, - uint32_t, uint64_t, float32_t, float64_t, complex64_t, complex128_t) +from numpy cimport ( + complex64_t, + complex128_t, + float32_t, + float64_t, + int8_t, + int16_t, + int32_t, + int64_t, + ndarray, + uint8_t, + uint16_t, + uint32_t, + uint64_t, +) from numpy.math cimport NAN -cnp.import_array() -from pandas._libs.util cimport numeric, get_nat +cnp.import_array() -from pandas._libs.algos cimport (swap, TiebreakEnumType, TIEBREAK_AVERAGE, - TIEBREAK_MIN, TIEBREAK_MAX, TIEBREAK_FIRST, - TIEBREAK_DENSE) -from pandas._libs.algos import (take_2d_axis1_float64_float64, - groupsort_indexer, tiebreakers) +from pandas._libs.algos cimport ( + TIEBREAK_AVERAGE, + TIEBREAK_DENSE, + TIEBREAK_FIRST, + TIEBREAK_MAX, + TIEBREAK_MIN, + TiebreakEnumType, + swap, +) +from pandas._libs.util cimport get_nat, numeric + +from pandas._libs.algos import ( + groupsort_indexer, + take_2d_axis1_float64_float64, + tiebreakers, +) from pandas._libs.missing cimport checknull + cdef int64_t NPY_NAT = get_nat() _int64_max = np.iinfo(np.int64).max diff --git a/pandas/_libs/hashing.pyx b/pandas/_libs/hashing.pyx index 2d859db22ea23..326e1b3921d11 100644 --- a/pandas/_libs/hashing.pyx +++ b/pandas/_libs/hashing.pyx @@ -1,11 +1,13 @@ # Translated from the reference implementation # at https://github.com/veorq/SipHash - import cython -from libc.stdlib cimport malloc, free + +from libc.stdlib cimport free, malloc import numpy as np -from numpy cimport ndarray, uint8_t, uint32_t, uint64_t, import_array + +from numpy cimport import_array, ndarray, uint8_t, uint32_t, uint64_t + import_array() from pandas._libs.util cimport is_nan diff --git a/pandas/_libs/hashtable.pyx b/pandas/_libs/hashtable.pyx index c3dcbb942d7fe..ffaf6d6505955 100644 --- a/pandas/_libs/hashtable.pyx +++ b/pandas/_libs/hashtable.pyx @@ -1,60 +1,57 @@ cimport cython - -from cpython.ref cimport PyObject, Py_INCREF -from cpython.mem cimport PyMem_Malloc, PyMem_Free - -from libc.stdlib cimport malloc, free +from cpython.mem cimport PyMem_Free, PyMem_Malloc +from cpython.ref cimport Py_INCREF, PyObject +from libc.stdlib cimport free, malloc import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, uint8_t, uint32_t, float64_t +from numpy cimport float64_t, ndarray, uint8_t, uint32_t from numpy.math cimport NAN + cnp.import_array() +from pandas._libs cimport util from pandas._libs.khash cimport ( - khiter_t, - kh_str_t, - kh_init_str, - kh_put_str, - kh_exist_str, - kh_get_str, - kh_destroy_str, - kh_resize_str, - kh_put_strbox, - kh_get_strbox, - kh_init_strbox, - kh_int64_t, - kh_init_int64, - kh_resize_int64, + kh_destroy_float64, kh_destroy_int64, - kh_get_int64, + kh_destroy_pymap, + kh_destroy_str, + kh_destroy_uint64, + kh_exist_float64, kh_exist_int64, - kh_put_int64, + kh_exist_pymap, + kh_exist_str, + kh_exist_uint64, kh_float64_t, - kh_exist_float64, - kh_put_float64, - kh_init_float64, kh_get_float64, - kh_destroy_float64, - kh_resize_float64, - kh_resize_uint64, - kh_exist_uint64, - kh_destroy_uint64, - kh_put_uint64, + kh_get_int64, + kh_get_pymap, + kh_get_str, + kh_get_strbox, kh_get_uint64, - kh_init_uint64, - kh_destroy_pymap, - kh_exist_pymap, + kh_init_float64, + kh_init_int64, kh_init_pymap, - kh_get_pymap, + kh_init_str, + kh_init_strbox, + kh_init_uint64, + kh_int64_t, + kh_put_float64, + kh_put_int64, kh_put_pymap, + kh_put_str, + kh_put_strbox, + kh_put_uint64, + kh_resize_float64, + kh_resize_int64, kh_resize_pymap, + kh_resize_str, + kh_resize_uint64, + kh_str_t, + khiter_t, ) - - -from pandas._libs cimport util - from pandas._libs.missing cimport checknull diff --git a/pandas/_libs/index.pyx b/pandas/_libs/index.pyx index 35c4b73b47695..d6659cc1895b1 100644 --- a/pandas/_libs/index.pyx +++ b/pandas/_libs/index.pyx @@ -1,6 +1,7 @@ import warnings import numpy as np + cimport numpy as cnp from numpy cimport ( float32_t, @@ -16,17 +17,16 @@ from numpy cimport ( uint32_t, uint64_t, ) + cnp.import_array() from pandas._libs cimport util - +from pandas._libs.hashtable cimport HashTable from pandas._libs.tslibs.nattype cimport c_NaT as NaT from pandas._libs.tslibs.period cimport is_period_object -from pandas._libs.tslibs.timestamps cimport _Timestamp from pandas._libs.tslibs.timedeltas cimport _Timedelta - -from pandas._libs.hashtable cimport HashTable +from pandas._libs.tslibs.timestamps cimport _Timestamp from pandas._libs import algos, hashtable as _hash from pandas._libs.missing import checknull diff --git a/pandas/_libs/internals.pyx b/pandas/_libs/internals.pyx index 8b4b490f49b12..4f27fde52414a 100644 --- a/pandas/_libs/internals.pyx +++ b/pandas/_libs/internals.pyx @@ -5,12 +5,15 @@ from cython import Py_ssize_t from cpython.slice cimport PySlice_GetIndicesEx + cdef extern from "Python.h": Py_ssize_t PY_SSIZE_T_MAX import numpy as np + cimport numpy as cnp from numpy cimport NPY_INT64, int64_t + cnp.import_array() from pandas._libs.algos import ensure_int64 diff --git a/pandas/_libs/interval.pyx b/pandas/_libs/interval.pyx index 95881ebf1385c..6867e8aba7411 100644 --- a/pandas/_libs/interval.pyx +++ b/pandas/_libs/interval.pyx @@ -1,7 +1,8 @@ import numbers from operator import le, lt -from cpython.datetime cimport PyDelta_Check, PyDateTime_IMPORT +from cpython.datetime cimport PyDateTime_IMPORT, PyDelta_Check + PyDateTime_IMPORT from cpython.object cimport ( @@ -16,8 +17,8 @@ from cpython.object cimport ( import cython from cython import Py_ssize_t - import numpy as np + cimport numpy as cnp from numpy cimport ( NPY_QUICKSORT, @@ -30,22 +31,21 @@ from numpy cimport ( ndarray, uint64_t, ) + cnp.import_array() from pandas._libs cimport util - from pandas._libs.hashtable cimport Int64Vector +from pandas._libs.tslibs.timedeltas cimport _Timedelta +from pandas._libs.tslibs.timestamps cimport _Timestamp +from pandas._libs.tslibs.timezones cimport tz_compare from pandas._libs.tslibs.util cimport ( - is_integer_object, is_float_object, + is_integer_object, is_timedelta64_object, ) -from pandas._libs.tslibs.timezones cimport tz_compare -from pandas._libs.tslibs.timestamps cimport _Timestamp -from pandas._libs.tslibs.timedeltas cimport _Timedelta - _VALID_CLOSED = frozenset(['left', 'right', 'both', 'neither']) diff --git a/pandas/_libs/join.pyx b/pandas/_libs/join.pyx index 54892a7e4bc77..13c7187923473 100644 --- a/pandas/_libs/join.pyx +++ b/pandas/_libs/join.pyx @@ -1,7 +1,7 @@ import cython from cython import Py_ssize_t - import numpy as np + cimport numpy as cnp from numpy cimport ( float32_t, @@ -16,6 +16,7 @@ from numpy cimport ( uint32_t, uint64_t, ) + cnp.import_array() from pandas._libs.algos import ( @@ -640,7 +641,11 @@ def outer_join_indexer(ndarray[join_t] left, ndarray[join_t] right): # ---------------------------------------------------------------------- from pandas._libs.hashtable cimport ( - HashTable, PyObjectHashTable, UInt64HashTable, Int64HashTable) + HashTable, + Int64HashTable, + PyObjectHashTable, + UInt64HashTable, +) ctypedef fused asof_t: uint8_t diff --git a/pandas/_libs/lib.pyx b/pandas/_libs/lib.pyx index 37d83a73c6597..411499a4de772 100644 --- a/pandas/_libs/lib.pyx +++ b/pandas/_libs/lib.pyx @@ -5,23 +5,24 @@ import warnings import cython from cython import Py_ssize_t -from cpython.object cimport PyObject_RichCompareBool, Py_EQ -from cpython.ref cimport Py_INCREF -from cpython.tuple cimport PyTuple_SET_ITEM, PyTuple_New -from cpython.iterator cimport PyIter_Check -from cpython.sequence cimport PySequence_Check -from cpython.number cimport PyNumber_Check - from cpython.datetime cimport ( - PyDateTime_Check, PyDate_Check, - PyTime_Check, - PyDelta_Check, + PyDateTime_Check, PyDateTime_IMPORT, + PyDelta_Check, + PyTime_Check, ) +from cpython.iterator cimport PyIter_Check +from cpython.number cimport PyNumber_Check +from cpython.object cimport Py_EQ, PyObject_RichCompareBool +from cpython.ref cimport Py_INCREF +from cpython.sequence cimport PySequence_Check +from cpython.tuple cimport PyTuple_New, PyTuple_SET_ITEM + PyDateTime_IMPORT import numpy as np + cimport numpy as cnp from numpy cimport ( NPY_OBJECT, @@ -39,6 +40,7 @@ from numpy cimport ( uint8_t, uint64_t, ) + cnp.import_array() cdef extern from "numpy/arrayobject.h": @@ -63,28 +65,23 @@ cdef extern from "src/parse_helper.h": int floatify(object, float64_t *result, int *maybe_int) except -1 from pandas._libs cimport util -from pandas._libs.util cimport is_nan, UINT64_MAX, INT64_MAX, INT64_MIN +from pandas._libs.util cimport INT64_MAX, INT64_MIN, UINT64_MAX, is_nan from pandas._libs.tslib import array_to_datetime -from pandas._libs.tslibs.nattype cimport ( - NPY_NAT, - c_NaT as NaT, - checknull_with_nat, -) -from pandas._libs.tslibs.conversion cimport convert_to_tsobject -from pandas._libs.tslibs.timedeltas cimport convert_to_timedelta64 -from pandas._libs.tslibs.timezones cimport tz_compare -from pandas._libs.tslibs.period cimport is_period_object -from pandas._libs.tslibs.offsets cimport is_offset_object from pandas._libs.missing cimport ( + C_NA, checknull, - isnaobj, is_null_datetime64, is_null_timedelta64, - C_NA, + isnaobj, ) - +from pandas._libs.tslibs.conversion cimport convert_to_tsobject +from pandas._libs.tslibs.nattype cimport NPY_NAT, c_NaT as NaT, checknull_with_nat +from pandas._libs.tslibs.offsets cimport is_offset_object +from pandas._libs.tslibs.period cimport is_period_object +from pandas._libs.tslibs.timedeltas cimport convert_to_timedelta64 +from pandas._libs.tslibs.timezones cimport tz_compare # constants that will be compared to potentially arbitrarily large # python int @@ -1317,8 +1314,7 @@ def infer_dtype(value: object, skipna: bool = True) -> str: if not isinstance(value, list): value = list(value) - from pandas.core.dtypes.cast import ( - construct_1d_object_array_from_listlike) + from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike values = construct_1d_object_array_from_listlike(value) # make contiguous diff --git a/pandas/_libs/missing.pyx b/pandas/_libs/missing.pyx index fdd06fe631b97..760fab3781fd4 100644 --- a/pandas/_libs/missing.pyx +++ b/pandas/_libs/missing.pyx @@ -1,27 +1,25 @@ -import cython -from cython import Py_ssize_t - import numbers +import cython +from cython import Py_ssize_t import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, int64_t, uint8_t, float64_t +from numpy cimport float64_t, int64_t, ndarray, uint8_t + cnp.import_array() from pandas._libs cimport util - - -from pandas._libs.tslibs.np_datetime cimport get_datetime64_value, get_timedelta64_value from pandas._libs.tslibs.nattype cimport ( c_NaT as NaT, checknull_with_nat, is_null_datetimelike, ) -from pandas._libs.ops_dispatch import maybe_dispatch_ufunc_to_dunder_op +from pandas._libs.tslibs.np_datetime cimport get_datetime64_value, get_timedelta64_value +from pandas._libs.ops_dispatch import maybe_dispatch_ufunc_to_dunder_op from pandas.compat import is_platform_32bit - cdef: float64_t INF = np.inf float64_t NEGINF = -INF diff --git a/pandas/_libs/ops.pyx b/pandas/_libs/ops.pyx index 658600cdfbe6c..d1f897d237c1b 100644 --- a/pandas/_libs/ops.pyx +++ b/pandas/_libs/ops.pyx @@ -10,18 +10,17 @@ from cpython.object cimport ( PyObject_RichCompareBool, ) - import cython from cython import Py_ssize_t - import numpy as np -from numpy cimport ndarray, uint8_t, import_array -import_array() +from numpy cimport import_array, ndarray, uint8_t + +import_array() -from pandas._libs.util cimport UINT8_MAX, is_nan from pandas._libs.missing cimport checknull +from pandas._libs.util cimport UINT8_MAX, is_nan @cython.wraparound(False) diff --git a/pandas/_libs/parsers.pyx b/pandas/_libs/parsers.pyx index 6ffb036e01595..01c85c95ac6bc 100644 --- a/pandas/_libs/parsers.pyx +++ b/pandas/_libs/parsers.pyx @@ -1,6 +1,8 @@ # Copyright (c) 2012, Lambda Foundry, Inc. # See LICENSE for the license import bz2 +from csv import QUOTE_MINIMAL, QUOTE_NONE, QUOTE_NONNUMERIC +from errno import ENOENT import gzip import io import os @@ -9,17 +11,14 @@ import time import warnings import zipfile -from csv import QUOTE_MINIMAL, QUOTE_NONNUMERIC, QUOTE_NONE -from errno import ENOENT - from libc.stdlib cimport free -from libc.string cimport strncpy, strlen, strcasecmp +from libc.string cimport strcasecmp, strlen, strncpy import cython from cython import Py_ssize_t from cpython.bytes cimport PyBytes_AsString, PyBytes_FromString -from cpython.exc cimport PyErr_Occurred, PyErr_Fetch +from cpython.exc cimport PyErr_Fetch, PyErr_Occurred from cpython.object cimport PyObject from cpython.ref cimport Py_XDECREF from cpython.unicode cimport PyUnicode_AsUTF8String, PyUnicode_Decode @@ -28,39 +27,60 @@ from cpython.unicode cimport PyUnicode_AsUTF8String, PyUnicode_Decode cdef extern from "Python.h": object PyUnicode_FromString(char *v) - import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, uint8_t, uint64_t, int64_t, float64_t +from numpy cimport float64_t, int64_t, ndarray, uint8_t, uint64_t + cnp.import_array() from pandas._libs cimport util -from pandas._libs.util cimport UINT64_MAX, INT64_MAX, INT64_MIN -import pandas._libs.lib as lib +from pandas._libs.util cimport INT64_MAX, INT64_MIN, UINT64_MAX + +from pandas._libs import lib as lib from pandas._libs.khash cimport ( - khiter_t, - kh_str_t, kh_init_str, kh_put_str, kh_exist_str, - kh_get_str, kh_destroy_str, - kh_float64_t, kh_get_float64, kh_destroy_float64, - kh_put_float64, kh_init_float64, kh_resize_float64, - kh_strbox_t, kh_put_strbox, kh_get_strbox, kh_init_strbox, + kh_destroy_float64, + kh_destroy_str, + kh_destroy_str_starts, kh_destroy_strbox, - kh_str_starts_t, kh_put_str_starts_item, kh_init_str_starts, - kh_get_str_starts_item, kh_destroy_str_starts, kh_resize_str_starts) + kh_exist_str, + kh_float64_t, + kh_get_float64, + kh_get_str, + kh_get_str_starts_item, + kh_get_strbox, + kh_init_float64, + kh_init_str, + kh_init_str_starts, + kh_init_strbox, + kh_put_float64, + kh_put_str, + kh_put_str_starts_item, + kh_put_strbox, + kh_resize_float64, + kh_resize_str_starts, + kh_str_starts_t, + kh_str_t, + kh_strbox_t, + khiter_t, +) + +from pandas.compat import _get_lzma_file, _import_lzma +from pandas.errors import DtypeWarning, EmptyDataError, ParserError, ParserWarning from pandas.core.dtypes.common import ( + is_bool_dtype, is_categorical_dtype, - is_integer_dtype, is_float_dtype, - is_bool_dtype, is_object_dtype, is_datetime64_dtype, - pandas_dtype, is_extension_array_dtype) + is_extension_array_dtype, + is_float_dtype, + is_integer_dtype, + is_object_dtype, + pandas_dtype, +) from pandas.core.dtypes.concat import union_categoricals -from pandas.compat import _import_lzma, _get_lzma_file -from pandas.errors import (ParserError, DtypeWarning, - EmptyDataError, ParserWarning) - lzma = _import_lzma() cdef: diff --git a/pandas/_libs/reduction.pyx b/pandas/_libs/reduction.pyx index 97c491776f831..f6e576ef893db 100644 --- a/pandas/_libs/reduction.pyx +++ b/pandas/_libs/reduction.pyx @@ -2,15 +2,18 @@ from copy import copy from cython import Py_ssize_t -from libc.stdlib cimport malloc, free +from libc.stdlib cimport free, malloc import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, int64_t +from numpy cimport int64_t, ndarray + cnp.import_array() from pandas._libs cimport util -from pandas._libs.lib import maybe_convert_objects, is_scalar + +from pandas._libs.lib import is_scalar, maybe_convert_objects cdef _check_result_array(object obj, Py_ssize_t cnt): diff --git a/pandas/_libs/reshape.pyx b/pandas/_libs/reshape.pyx index da4dd00027395..5c6c15fb50fed 100644 --- a/pandas/_libs/reshape.pyx +++ b/pandas/_libs/reshape.pyx @@ -16,7 +16,9 @@ from numpy cimport ( ) import numpy as np + cimport numpy as cnp + cnp.import_array() from pandas._libs.lib cimport c_is_list_like diff --git a/pandas/_libs/sparse.pyx b/pandas/_libs/sparse.pyx index 7c9575d921dc9..321d7c374d8ec 100644 --- a/pandas/_libs/sparse.pyx +++ b/pandas/_libs/sparse.pyx @@ -1,9 +1,18 @@ import cython - import numpy as np + cimport numpy as cnp -from numpy cimport (ndarray, uint8_t, int64_t, int32_t, int16_t, int8_t, - float64_t, float32_t) +from numpy cimport ( + float32_t, + float64_t, + int8_t, + int16_t, + int32_t, + int64_t, + ndarray, + uint8_t, +) + cnp.import_array() diff --git a/pandas/_libs/testing.pyx b/pandas/_libs/testing.pyx index 785a4d1f8b923..64fc8d615ea9c 100644 --- a/pandas/_libs/testing.pyx +++ b/pandas/_libs/testing.pyx @@ -1,13 +1,16 @@ import math import numpy as np + from numpy cimport import_array + import_array() from pandas._libs.util cimport is_array -from pandas.core.dtypes.missing import isna, array_equivalent from pandas.core.dtypes.common import is_dtype_equal +from pandas.core.dtypes.missing import array_equivalent, isna + cdef NUMERIC_TYPES = ( bool, @@ -129,6 +132,7 @@ cpdef assert_almost_equal(a, b, if not isiterable(b): from pandas._testing import assert_class_equal + # classes can't be the same, to raise error assert_class_equal(a, b, obj=obj) @@ -181,6 +185,7 @@ cpdef assert_almost_equal(a, b, elif isiterable(b): from pandas._testing import assert_class_equal + # classes can't be the same, to raise error assert_class_equal(a, b, obj=obj) diff --git a/pandas/_libs/tslib.pyx b/pandas/_libs/tslib.pyx index 3472dbf161b8e..2e7af1a2fb5f4 100644 --- a/pandas/_libs/tslib.pyx +++ b/pandas/_libs/tslib.pyx @@ -10,23 +10,20 @@ from cpython.datetime cimport ( timedelta, tzinfo, ) + # import datetime C API PyDateTime_IMPORT cimport numpy as cnp -from numpy cimport float64_t, int64_t, ndarray, uint8_t, intp_t +from numpy cimport float64_t, int64_t, intp_t, ndarray, uint8_t + import numpy as np + cnp.import_array() import pytz -from pandas._libs.util cimport ( - is_datetime64_object, - is_float_object, - is_integer_object, -) - from pandas._libs.tslibs.np_datetime cimport ( _string_to_dts, check_dts_bounds, @@ -37,42 +34,35 @@ from pandas._libs.tslibs.np_datetime cimport ( pydate_to_dt64, pydatetime_to_dt64, ) +from pandas._libs.util cimport is_datetime64_object, is_float_object, is_integer_object from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime - from pandas._libs.tslibs.parsing import parse_datetime_string -from pandas._libs.tslibs.timezones cimport ( - get_dst_info, - is_utc, - is_tzlocal, -) from pandas._libs.tslibs.conversion cimport ( _TSObject, cast_from_unit, convert_datetime_to_tsobject, get_datetime64_nanos, ) - from pandas._libs.tslibs.nattype cimport ( NPY_NAT, c_NaT as NaT, c_nat_strings as nat_strings, ) - from pandas._libs.tslibs.offsets cimport to_offset +from pandas._libs.tslibs.timestamps cimport _Timestamp, create_timestamp_from_ts +from pandas._libs.tslibs.timezones cimport get_dst_info, is_tzlocal, is_utc -from pandas._libs.tslibs.timestamps cimport create_timestamp_from_ts, _Timestamp from pandas._libs.tslibs.timestamps import Timestamp +# Note: this is the only non-tslibs intra-pandas dependency here +from pandas._libs.missing cimport checknull_with_nat_and_na from pandas._libs.tslibs.tzconversion cimport ( tz_convert_utc_to_tzlocal, tz_localize_to_utc_single, ) -# Note: this is the only non-tslibs intra-pandas dependency here -from pandas._libs.missing cimport checknull_with_nat_and_na - cdef inline object create_datetime_from_ts( int64_t value, diff --git a/pandas/_libs/tslibs/ccalendar.pyx b/pandas/_libs/tslibs/ccalendar.pyx index de8fd3911e946..e5560a178eb88 100644 --- a/pandas/_libs/tslibs/ccalendar.pyx +++ b/pandas/_libs/tslibs/ccalendar.pyx @@ -2,10 +2,9 @@ """ Cython implementations of functions resembling the stdlib calendar module """ - import cython -from numpy cimport int64_t, int32_t +from numpy cimport int32_t, int64_t # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/conversion.pyx b/pandas/_libs/tslibs/conversion.pyx index 36a4a1f60d8b9..8502c22200c13 100644 --- a/pandas/_libs/tslibs/conversion.pyx +++ b/pandas/_libs/tslibs/conversion.pyx @@ -1,44 +1,68 @@ import cython - import numpy as np + cimport numpy as cnp -from numpy cimport int64_t, int32_t, intp_t, ndarray +from numpy cimport int32_t, int64_t, intp_t, ndarray + cnp.import_array() import pytz # stdlib datetime imports -from cpython.datetime cimport (datetime, time, tzinfo, - PyDateTime_Check, PyDate_Check, - PyDateTime_IMPORT) + +from cpython.datetime cimport ( + PyDate_Check, + PyDateTime_Check, + PyDateTime_IMPORT, + datetime, + time, + tzinfo, +) + PyDateTime_IMPORT from pandas._libs.tslibs.base cimport ABCTimestamp - from pandas._libs.tslibs.np_datetime cimport ( - check_dts_bounds, npy_datetimestruct, pandas_datetime_to_datetimestruct, - _string_to_dts, npy_datetime, dt64_to_dtstruct, dtstruct_to_dt64, - get_datetime64_unit, get_datetime64_value, pydatetime_to_dt64, - NPY_DATETIMEUNIT, NPY_FR_ns) -from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime + NPY_DATETIMEUNIT, + NPY_FR_ns, + _string_to_dts, + check_dts_bounds, + dt64_to_dtstruct, + dtstruct_to_dt64, + get_datetime64_unit, + get_datetime64_value, + npy_datetime, + npy_datetimestruct, + pandas_datetime_to_datetimestruct, + pydatetime_to_dt64, +) -from pandas._libs.tslibs.util cimport ( - is_datetime64_object, is_integer_object, is_float_object) +from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime from pandas._libs.tslibs.timezones cimport ( - is_utc, is_tzlocal, is_fixed_offset, get_utcoffset, get_dst_info, - maybe_get_tz, tz_compare, + get_dst_info, + get_utcoffset, + is_fixed_offset, + is_tzlocal, + is_utc, + maybe_get_tz, + tz_compare, utc_pytz as UTC, ) +from pandas._libs.tslibs.util cimport ( + is_datetime64_object, + is_float_object, + is_integer_object, +) + from pandas._libs.tslibs.parsing import parse_datetime_string from pandas._libs.tslibs.nattype cimport ( NPY_NAT, - checknull_with_nat, c_NaT as NaT, c_nat_strings as nat_strings, + checknull_with_nat, ) - from pandas._libs.tslibs.tzconversion cimport ( tz_convert_utc_to_tzlocal, tz_localize_to_utc_single, diff --git a/pandas/_libs/tslibs/fields.pyx b/pandas/_libs/tslibs/fields.pyx index 5ea7c0b6c5d02..d254b585e11ab 100644 --- a/pandas/_libs/tslibs/fields.pyx +++ b/pandas/_libs/tslibs/fields.pyx @@ -6,24 +6,35 @@ from locale import LC_TIME import cython from cython import Py_ssize_t - import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, int64_t, int32_t, int8_t, uint32_t +from numpy cimport int8_t, int32_t, int64_t, ndarray, uint32_t + cnp.import_array() from pandas._config.localization import set_locale -from pandas._libs.tslibs.ccalendar import MONTHS_FULL, DAYS_FULL +from pandas._libs.tslibs.ccalendar import DAYS_FULL, MONTHS_FULL + from pandas._libs.tslibs.ccalendar cimport ( - get_days_in_month, is_leapyear, dayofweek, get_week_of_year, - get_day_of_year, get_iso_calendar, iso_calendar_t, + dayofweek, + get_day_of_year, + get_days_in_month, + get_iso_calendar, + get_week_of_year, + is_leapyear, + iso_calendar_t, month_offset, ) -from pandas._libs.tslibs.np_datetime cimport ( - npy_datetimestruct, pandas_timedeltastruct, dt64_to_dtstruct, - td64_to_tdstruct) from pandas._libs.tslibs.nattype cimport NPY_NAT +from pandas._libs.tslibs.np_datetime cimport ( + dt64_to_dtstruct, + npy_datetimestruct, + pandas_timedeltastruct, + td64_to_tdstruct, +) + from pandas._libs.tslibs.strptime import LocaleTime diff --git a/pandas/_libs/tslibs/nattype.pyx b/pandas/_libs/tslibs/nattype.pyx index 264013f928d22..8e943d5ca975e 100644 --- a/pandas/_libs/tslibs/nattype.pyx +++ b/pandas/_libs/tslibs/nattype.pyx @@ -1,3 +1,10 @@ +from cpython.datetime cimport ( + PyDateTime_Check, + PyDateTime_IMPORT, + PyDelta_Check, + datetime, + timedelta, +) from cpython.object cimport ( Py_EQ, Py_GE, @@ -8,28 +15,19 @@ from cpython.object cimport ( PyObject_RichCompare, ) -from cpython.datetime cimport ( - PyDateTime_Check, - PyDateTime_IMPORT, - PyDelta_Check, - datetime, - timedelta, -) PyDateTime_IMPORT from cpython.version cimport PY_MINOR_VERSION import numpy as np + cimport numpy as cnp from numpy cimport int64_t -cnp.import_array() -from pandas._libs.tslibs.np_datetime cimport ( - get_datetime64_value, - get_timedelta64_value, -) -cimport pandas._libs.tslibs.util as util +cnp.import_array() +from pandas._libs.tslibs cimport util as util +from pandas._libs.tslibs.np_datetime cimport get_datetime64_value, get_timedelta64_value # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/np_datetime.pyx b/pandas/_libs/tslibs/np_datetime.pyx index 31cc55ad981bb..12aaaf4ce3977 100644 --- a/pandas/_libs/tslibs/np_datetime.pyx +++ b/pandas/_libs/tslibs/np_datetime.pyx @@ -1,5 +1,3 @@ -from cpython.object cimport Py_EQ, Py_NE, Py_GE, Py_GT, Py_LT, Py_LE - from cpython.datetime cimport ( PyDateTime_DATE_GET_HOUR, PyDateTime_DATE_GET_MICROSECOND, @@ -10,11 +8,15 @@ from cpython.datetime cimport ( PyDateTime_GET_YEAR, PyDateTime_IMPORT, ) +from cpython.object cimport Py_EQ, Py_GE, Py_GT, Py_LE, Py_LT, Py_NE + PyDateTime_IMPORT from numpy cimport int64_t + from pandas._libs.tslibs.util cimport get_c_string_buf_and_size + cdef extern from "src/datetime/np_datetime.h": int cmp_npy_datetimestruct(npy_datetimestruct *a, npy_datetimestruct *b) diff --git a/pandas/_libs/tslibs/offsets.pyx b/pandas/_libs/tslibs/offsets.pyx index e4d05e0d70e2f..b2a8827fefff7 100644 --- a/pandas/_libs/tslibs/offsets.pyx +++ b/pandas/_libs/tslibs/offsets.pyx @@ -1,40 +1,52 @@ -import cython - import operator import re import time from typing import Any import warnings -from cpython.datetime cimport (PyDateTime_IMPORT, - PyDateTime_Check, - PyDate_Check, - PyDelta_Check, - datetime, timedelta, date, - time as dt_time) + +import cython + +from cpython.datetime cimport ( + PyDate_Check, + PyDateTime_Check, + PyDateTime_IMPORT, + PyDelta_Check, + date, + datetime, + time as dt_time, + timedelta, +) + PyDateTime_IMPORT -from dateutil.relativedelta import relativedelta from dateutil.easter import easter - +from dateutil.relativedelta import relativedelta import numpy as np + cimport numpy as cnp from numpy cimport int64_t, ndarray + cnp.import_array() # TODO: formalize having _libs.properties "above" tslibs in the dependency structure + from pandas._libs.properties import cache_readonly from pandas._libs.tslibs cimport util from pandas._libs.tslibs.util cimport ( - is_integer_object, is_datetime64_object, is_float_object, + is_integer_object, ) from pandas._libs.tslibs.ccalendar import ( - MONTH_ALIASES, MONTH_TO_CAL_NUM, weekday_to_int, int_to_weekday, + MONTH_ALIASES, + MONTH_TO_CAL_NUM, + int_to_weekday, + weekday_to_int, ) -from pandas._libs.tslibs.ccalendar cimport DAY_NANOS, get_days_in_month, dayofweek + +from pandas._libs.tslibs.ccalendar cimport DAY_NANOS, dayofweek, get_days_in_month from pandas._libs.tslibs.conversion cimport ( convert_datetime_to_tsobject, localize_pydatetime, @@ -42,9 +54,9 @@ from pandas._libs.tslibs.conversion cimport ( ) from pandas._libs.tslibs.nattype cimport NPY_NAT, c_NaT as NaT from pandas._libs.tslibs.np_datetime cimport ( - npy_datetimestruct, - dtstruct_to_dt64, dt64_to_dtstruct, + dtstruct_to_dt64, + npy_datetimestruct, pydate_to_dtstruct, ) from pandas._libs.tslibs.timezones cimport utc_pytz as UTC @@ -52,8 +64,11 @@ from pandas._libs.tslibs.tzconversion cimport tz_convert_single from .dtypes cimport PeriodDtypeCode from .timedeltas cimport delta_to_nanoseconds + from .timedeltas import Timedelta + from .timestamps cimport _Timestamp + from .timestamps import Timestamp # --------------------------------------------------------------------- diff --git a/pandas/_libs/tslibs/parsing.pyx b/pandas/_libs/tslibs/parsing.pyx index 3a1af9fdb1e8f..49baad28e44fe 100644 --- a/pandas/_libs/tslibs/parsing.pyx +++ b/pandas/_libs/tslibs/parsing.pyx @@ -9,39 +9,44 @@ from libc.string cimport strchr import cython from cython import Py_ssize_t -from cpython.object cimport PyObject_Str - from cpython.datetime cimport datetime, datetime_new, import_datetime, tzinfo +from cpython.object cimport PyObject_Str from cpython.version cimport PY_VERSION_HEX + import_datetime() import numpy as np + cimport numpy as cnp -from numpy cimport (PyArray_GETITEM, PyArray_ITER_DATA, PyArray_ITER_NEXT, - PyArray_IterNew, flatiter, float64_t) +from numpy cimport ( + PyArray_GETITEM, + PyArray_ITER_DATA, + PyArray_ITER_NEXT, + PyArray_IterNew, + flatiter, + float64_t, +) + cnp.import_array() # dateutil compat -from dateutil.tz import (tzoffset, - tzlocal as _dateutil_tzlocal, - tzutc as _dateutil_tzutc, - tzstr as _dateutil_tzstr) + +from dateutil.parser import DEFAULTPARSER, parse as du_parse from dateutil.relativedelta import relativedelta -from dateutil.parser import DEFAULTPARSER -from dateutil.parser import parse as du_parse +from dateutil.tz import ( + tzlocal as _dateutil_tzlocal, + tzoffset, + tzstr as _dateutil_tzstr, + tzutc as _dateutil_tzutc, +) from pandas._config import get_option from pandas._libs.tslibs.ccalendar cimport c_MONTH_NUMBERS -from pandas._libs.tslibs.nattype cimport ( - c_nat_strings as nat_strings, - c_NaT as NaT, -) -from pandas._libs.tslibs.util cimport ( - is_array, - get_c_string_buf_and_size, -) +from pandas._libs.tslibs.nattype cimport c_NaT as NaT, c_nat_strings as nat_strings from pandas._libs.tslibs.offsets cimport is_offset_object +from pandas._libs.tslibs.util cimport get_c_string_buf_and_size, is_array + cdef extern from "../src/headers/portable.h": int getdigit_ascii(char c, int default) nogil diff --git a/pandas/_libs/tslibs/period.pyx b/pandas/_libs/tslibs/period.pyx index c0641297c4b8a..eb8948219b8bc 100644 --- a/pandas/_libs/tslibs/period.pyx +++ b/pandas/_libs/tslibs/period.pyx @@ -1,98 +1,101 @@ import warnings -from cpython.object cimport PyObject_RichCompareBool, Py_EQ, Py_NE +from cpython.object cimport Py_EQ, Py_NE, PyObject_RichCompareBool +from numpy cimport import_array, int64_t, ndarray -from numpy cimport int64_t, import_array, ndarray import numpy as np + import_array() from libc.stdlib cimport free, malloc +from libc.string cimport memset, strlen from libc.time cimport strftime, tm -from libc.string cimport strlen, memset import cython from cpython.datetime cimport ( - datetime, - tzinfo, PyDate_Check, PyDateTime_Check, PyDateTime_IMPORT, PyDelta_Check, + datetime, + tzinfo, ) + # import datetime C API PyDateTime_IMPORT from pandas._libs.tslibs.np_datetime cimport ( - npy_datetimestruct, - dtstruct_to_dt64, - dt64_to_dtstruct, - pandas_datetime_to_datetimestruct, - check_dts_bounds, NPY_DATETIMEUNIT, NPY_FR_D, NPY_FR_us, + check_dts_bounds, + dt64_to_dtstruct, + dtstruct_to_dt64, + npy_datetimestruct, + pandas_datetime_to_datetimestruct, ) + cdef extern from "src/datetime/np_datetime.h": int64_t npy_datetimestruct_to_datetime(NPY_DATETIMEUNIT fr, npy_datetimestruct *d) nogil -cimport pandas._libs.tslibs.util as util +from pandas._libs.tslibs cimport util as util from pandas._libs.tslibs.timestamps import Timestamp -from pandas._libs.tslibs.timezones cimport is_utc, is_tzlocal, get_dst_info + +from pandas._libs.tslibs.timezones cimport get_dst_info, is_tzlocal, is_utc + from pandas._libs.tslibs.timedeltas import Timedelta -from pandas._libs.tslibs.timedeltas cimport ( - delta_to_nanoseconds, - is_any_td_scalar, -) from pandas._libs.tslibs.ccalendar cimport ( + c_MONTH_NUMBERS, dayofweek, get_day_of_year, - is_leapyear, - get_week_of_year, get_days_in_month, + get_week_of_year, + is_leapyear, ) -from pandas._libs.tslibs.ccalendar cimport c_MONTH_NUMBERS - from pandas._libs.tslibs.dtypes cimport ( - PeriodDtypeBase, - FR_UND, FR_ANN, - FR_QTR, - FR_MTH, - FR_WK, FR_BUS, FR_DAY, FR_HR, FR_MIN, - FR_SEC, FR_MS, - FR_US, + FR_MTH, FR_NS, + FR_QTR, + FR_SEC, + FR_UND, + FR_US, + FR_WK, + PeriodDtypeBase, attrname_to_abbrevs, ) - from pandas._libs.tslibs.parsing cimport get_rule_month +from pandas._libs.tslibs.timedeltas cimport delta_to_nanoseconds, is_any_td_scalar + from pandas._libs.tslibs.parsing import parse_time_string + from pandas._libs.tslibs.nattype cimport ( - _nat_scalar_rules, NPY_NAT, - is_null_datetimelike, + _nat_scalar_rules, c_NaT as NaT, c_nat_strings as nat_strings, + is_null_datetimelike, ) from pandas._libs.tslibs.offsets cimport ( BaseOffset, - to_offset, - is_tick_object, is_offset_object, + is_tick_object, + to_offset, ) + from pandas._libs.tslibs.offsets import INVALID_FREQ_ERR_MSG -from pandas._libs.tslibs.tzconversion cimport tz_convert_utc_to_tzlocal +from pandas._libs.tslibs.tzconversion cimport tz_convert_utc_to_tzlocal cdef: enum: diff --git a/pandas/_libs/tslibs/resolution.pyx b/pandas/_libs/tslibs/resolution.pyx index d5f10374d2860..ec1bd1d7b398e 100644 --- a/pandas/_libs/tslibs/resolution.pyx +++ b/pandas/_libs/tslibs/resolution.pyx @@ -1,16 +1,16 @@ from cpython.datetime cimport tzinfo import numpy as np -from numpy cimport ndarray, int64_t, int32_t + +from numpy cimport int32_t, int64_t, ndarray from pandas._libs.tslibs.util cimport get_nat from pandas._libs.tslibs.dtypes import Resolution -from pandas._libs.tslibs.np_datetime cimport ( - npy_datetimestruct, dt64_to_dtstruct) -from pandas._libs.tslibs.timezones cimport ( - is_utc, is_tzlocal, get_dst_info) + from pandas._libs.tslibs.ccalendar cimport get_days_in_month +from pandas._libs.tslibs.np_datetime cimport dt64_to_dtstruct, npy_datetimestruct +from pandas._libs.tslibs.timezones cimport get_dst_info, is_tzlocal, is_utc from pandas._libs.tslibs.tzconversion cimport tz_convert_utc_to_tzlocal # ---------------------------------------------------------------------- diff --git a/pandas/_libs/tslibs/strptime.pyx b/pandas/_libs/tslibs/strptime.pyx index 884578df3e00b..ad2db5fc09c70 100644 --- a/pandas/_libs/tslibs/strptime.pyx +++ b/pandas/_libs/tslibs/strptime.pyx @@ -1,27 +1,30 @@ """Strptime-related classes and functions. """ -import time -import locale import calendar +import locale import re +import time from cpython cimport datetime from _thread import allocate_lock as _thread_allocate_lock +import numpy as np import pytz -import numpy as np from numpy cimport int64_t -from pandas._libs.tslibs.np_datetime cimport ( - check_dts_bounds, dtstruct_to_dt64, npy_datetimestruct) - from pandas._libs.tslibs.nattype cimport ( - checknull_with_nat, NPY_NAT, c_nat_strings as nat_strings, + checknull_with_nat, ) +from pandas._libs.tslibs.np_datetime cimport ( + check_dts_bounds, + dtstruct_to_dt64, + npy_datetimestruct, +) + cdef dict _parse_code_table = {'y': 0, 'Y': 1, diff --git a/pandas/_libs/tslibs/timedeltas.pyx b/pandas/_libs/tslibs/timedeltas.pyx index 8f3a599bf107c..7b730eb7570a8 100644 --- a/pandas/_libs/tslibs/timedeltas.pyx +++ b/pandas/_libs/tslibs/timedeltas.pyx @@ -2,39 +2,47 @@ import collections import cython -from cpython.object cimport Py_NE, Py_EQ, PyObject_RichCompare +from cpython.object cimport Py_EQ, Py_NE, PyObject_RichCompare import numpy as np + cimport numpy as cnp from numpy cimport int64_t, ndarray + cnp.import_array() -from cpython.datetime cimport (timedelta, - PyDateTime_Check, PyDelta_Check, - PyDateTime_IMPORT) +from cpython.datetime cimport ( + PyDateTime_Check, + PyDateTime_IMPORT, + PyDelta_Check, + timedelta, +) + PyDateTime_IMPORT -cimport pandas._libs.tslibs.util as util -from pandas._libs.tslibs.util cimport ( - is_timedelta64_object, is_datetime64_object, is_integer_object, - is_float_object, is_array -) - +from pandas._libs.tslibs cimport util as util from pandas._libs.tslibs.base cimport ABCTimestamp - from pandas._libs.tslibs.conversion cimport cast_from_unit - -from pandas._libs.tslibs.np_datetime cimport ( - cmp_scalar, td64_to_tdstruct, pandas_timedeltastruct) - from pandas._libs.tslibs.nattype cimport ( - checknull_with_nat, NPY_NAT, c_NaT as NaT, c_nat_strings as nat_strings, + checknull_with_nat, +) +from pandas._libs.tslibs.np_datetime cimport ( + cmp_scalar, + pandas_timedeltastruct, + td64_to_tdstruct, ) from pandas._libs.tslibs.offsets cimport is_tick_object +from pandas._libs.tslibs.util cimport ( + is_array, + is_datetime64_object, + is_float_object, + is_integer_object, + is_timedelta64_object, +) # ---------------------------------------------------------------------- # Constants diff --git a/pandas/_libs/tslibs/timestamps.pyx b/pandas/_libs/tslibs/timestamps.pyx index a2dacd9d36b14..4098648d2aedd 100644 --- a/pandas/_libs/tslibs/timestamps.pyx +++ b/pandas/_libs/tslibs/timestamps.pyx @@ -9,54 +9,66 @@ shadows the python class, where we do any heavy lifting. import warnings import numpy as np + cimport numpy as cnp -from numpy cimport int64_t, int8_t, uint8_t, ndarray -cnp.import_array() +from numpy cimport int8_t, int64_t, ndarray, uint8_t -from cpython.object cimport (PyObject_RichCompareBool, PyObject_RichCompare, - Py_EQ, Py_NE) +cnp.import_array() -from cpython.datetime cimport ( - datetime, - time, - tzinfo, - tzinfo as tzinfo_type, # alias bc `tzinfo` is a kwarg below +from cpython.datetime cimport ( # alias bc `tzinfo` is a kwarg below PyDateTime_Check, + PyDateTime_IMPORT, PyDelta_Check, PyTZInfo_Check, - PyDateTime_IMPORT, -) -PyDateTime_IMPORT - -from pandas._libs.tslibs.util cimport ( - is_datetime64_object, is_float_object, is_integer_object, - is_timedelta64_object, is_array, + datetime, + time, + tzinfo as tzinfo_type, ) +from cpython.object cimport Py_EQ, Py_NE, PyObject_RichCompare, PyObject_RichCompareBool -from pandas._libs.tslibs.base cimport ABCTimestamp +PyDateTime_IMPORT from pandas._libs.tslibs cimport ccalendar - +from pandas._libs.tslibs.base cimport ABCTimestamp from pandas._libs.tslibs.conversion cimport ( _TSObject, - convert_to_tsobject, convert_datetime_to_tsobject, + convert_to_tsobject, normalize_i8_stamp, ) -from pandas._libs.tslibs.fields import get_start_end_field, get_date_name_field +from pandas._libs.tslibs.util cimport ( + is_array, + is_datetime64_object, + is_float_object, + is_integer_object, + is_timedelta64_object, +) + +from pandas._libs.tslibs.fields import get_date_name_field, get_start_end_field + from pandas._libs.tslibs.nattype cimport NPY_NAT, c_NaT as NaT from pandas._libs.tslibs.np_datetime cimport ( - check_dts_bounds, npy_datetimestruct, dt64_to_dtstruct, + check_dts_bounds, cmp_scalar, + dt64_to_dtstruct, + npy_datetimestruct, pydatetime_to_dt64, ) + from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime -from pandas._libs.tslibs.offsets cimport to_offset, is_offset_object -from pandas._libs.tslibs.timedeltas cimport is_any_td_scalar, delta_to_nanoseconds + +from pandas._libs.tslibs.offsets cimport is_offset_object, to_offset +from pandas._libs.tslibs.timedeltas cimport delta_to_nanoseconds, is_any_td_scalar + from pandas._libs.tslibs.timedeltas import Timedelta + from pandas._libs.tslibs.timezones cimport ( - is_utc, maybe_get_tz, treat_tz_as_pytz, utc_pytz as UTC, - get_timezone, tz_compare, + get_timezone, + is_utc, + maybe_get_tz, + treat_tz_as_pytz, + tz_compare, + utc_pytz as UTC, ) from pandas._libs.tslibs.tzconversion cimport ( tz_convert_single, diff --git a/pandas/_libs/tslibs/timezones.pyx b/pandas/_libs/tslibs/timezones.pyx index 3b2104f75956a..e224d8b73a587 100644 --- a/pandas/_libs/tslibs/timezones.pyx +++ b/pandas/_libs/tslibs/timezones.pyx @@ -1,27 +1,31 @@ from datetime import timezone + from cpython.datetime cimport datetime, timedelta, tzinfo # dateutil compat + from dateutil.tz import ( gettz as dateutil_gettz, tzfile as _dateutil_tzfile, tzlocal as _dateutil_tzlocal, tzutc as _dateutil_tzutc, ) - - -from pytz.tzinfo import BaseTzInfo as _pytz_BaseTzInfo import pytz +from pytz.tzinfo import BaseTzInfo as _pytz_BaseTzInfo + UTC = pytz.utc import numpy as np + cimport numpy as cnp from numpy cimport int64_t + cnp.import_array() # ---------------------------------------------------------------------- -from pandas._libs.tslibs.util cimport is_integer_object, get_nat +from pandas._libs.tslibs.util cimport get_nat, is_integer_object + cdef int64_t NPY_NAT = get_nat() cdef tzinfo utc_stdlib = timezone.utc diff --git a/pandas/_libs/tslibs/tzconversion.pyx b/pandas/_libs/tslibs/tzconversion.pyx index 98c40e109dbab..c915e9e193bf2 100644 --- a/pandas/_libs/tslibs/tzconversion.pyx +++ b/pandas/_libs/tslibs/tzconversion.pyx @@ -5,21 +5,27 @@ import cython from cython import Py_ssize_t from cpython.datetime cimport ( - PyDateTime_IMPORT, PyDelta_Check, datetime, timedelta, tzinfo) + PyDateTime_IMPORT, + PyDelta_Check, + datetime, + timedelta, + tzinfo, +) + PyDateTime_IMPORT -import pytz from dateutil.tz import tzutc - import numpy as np +import pytz + cimport numpy as cnp -from numpy cimport ndarray, int64_t, uint8_t, intp_t +from numpy cimport int64_t, intp_t, ndarray, uint8_t + cnp.import_array() from pandas._libs.tslibs.ccalendar cimport DAY_NANOS, HOUR_NANOS from pandas._libs.tslibs.nattype cimport NPY_NAT -from pandas._libs.tslibs.np_datetime cimport ( - npy_datetimestruct, dt64_to_dtstruct) +from pandas._libs.tslibs.np_datetime cimport dt64_to_dtstruct, npy_datetimestruct from pandas._libs.tslibs.timezones cimport ( get_dst_info, get_utcoffset, diff --git a/pandas/_libs/window/aggregations.pyx b/pandas/_libs/window/aggregations.pyx index 362d0e6263697..b7955c8972dd8 100644 --- a/pandas/_libs/window/aggregations.pyx +++ b/pandas/_libs/window/aggregations.pyx @@ -1,14 +1,15 @@ # cython: boundscheck=False, wraparound=False, cdivision=True - import cython from cython import Py_ssize_t -from libcpp.deque cimport deque -from libc.stdlib cimport malloc, free +from libc.stdlib cimport free, malloc +from libcpp.deque cimport deque import numpy as np + cimport numpy as cnp -from numpy cimport ndarray, int64_t, float64_t, float32_t, uint8_t +from numpy cimport float32_t, float64_t, int64_t, ndarray, uint8_t + cnp.import_array() @@ -22,6 +23,7 @@ from pandas._libs.algos import is_monotonic from pandas._libs.util cimport numeric + cdef extern from "../src/skiplist.h": ctypedef struct node_t: node_t **next diff --git a/pandas/_libs/window/indexers.pyx b/pandas/_libs/window/indexers.pyx index 8a1e7feb57ace..ca3dc8fafe198 100644 --- a/pandas/_libs/window/indexers.pyx +++ b/pandas/_libs/window/indexers.pyx @@ -1,7 +1,7 @@ # cython: boundscheck=False, wraparound=False, cdivision=True - import numpy as np -from numpy cimport ndarray, int64_t + +from numpy cimport int64_t, ndarray # Cython routines for window indexers diff --git a/pandas/_libs/writers.pyx b/pandas/_libs/writers.pyx index 2d5b31d7ccbcf..40c39aabb7a7a 100644 --- a/pandas/_libs/writers.pyx +++ b/pandas/_libs/writers.pyx @@ -5,8 +5,8 @@ from cpython.bytes cimport PyBytes_GET_SIZE from cpython.unicode cimport PyUnicode_GET_SIZE import numpy as np -from numpy cimport ndarray, uint8_t +from numpy cimport ndarray, uint8_t ctypedef fused pandas_string: str diff --git a/pandas/_testing.py b/pandas/_testing.py index fc6df7a95e348..1d002e95329e4 100644 --- a/pandas/_testing.py +++ b/pandas/_testing.py @@ -22,8 +22,8 @@ set_locale, ) +from pandas._libs import testing as _testing from pandas._libs.lib import no_default -import pandas._libs.testing as _testing from pandas._typing import Dtype, FilePathOrBuffer, FrameOrSeries from pandas.compat import _get_lzma_file, _import_lzma @@ -535,7 +535,7 @@ def rands(nchars): def close(fignum=None): - from matplotlib.pyplot import get_fignums, close as _close + from matplotlib.pyplot import close as _close, get_fignums if fignum is None: for fignum in get_fignums(): @@ -887,7 +887,7 @@ def assert_attr_equal(attr: str, left, right, obj: str = "Attributes"): def assert_is_valid_plot_return_object(objs): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if isinstance(objs, (pd.Series, np.ndarray)): for el in objs.ravel(): diff --git a/pandas/_typing.py b/pandas/_typing.py index 4892abc5f6f51..9b1f9777529b2 100644 --- a/pandas/_typing.py +++ b/pandas/_typing.py @@ -24,13 +24,15 @@ # https://mypy.readthedocs.io/en/latest/common_issues.html#import-cycles if TYPE_CHECKING: from pandas._libs import Period, Timedelta, Timestamp # noqa: F401 - from pandas.core.arrays.base import ExtensionArray # noqa: F401 + from pandas.core.dtypes.dtypes import ExtensionDtype # noqa: F401 - from pandas.core.indexes.base import Index # noqa: F401 - from pandas.core.generic import NDFrame # noqa: F401 + from pandas import Interval # noqa: F401 - from pandas.core.series import Series # noqa: F401 + from pandas.core.arrays.base import ExtensionArray # noqa: F401 from pandas.core.frame import DataFrame # noqa: F401 + from pandas.core.generic import NDFrame # noqa: F401 + from pandas.core.indexes.base import Index # noqa: F401 + from pandas.core.series import Series # noqa: F401 # array-like diff --git a/pandas/compat/pickle_compat.py b/pandas/compat/pickle_compat.py index 0484de3fa165d..f4f32e6ee2285 100644 --- a/pandas/compat/pickle_compat.py +++ b/pandas/compat/pickle_compat.py @@ -1,7 +1,6 @@ """ Support pre-0.12 series pickle compatibility. """ - import contextlib import copy import io @@ -14,7 +13,7 @@ from pandas import Index if TYPE_CHECKING: - from pandas import Series, DataFrame + from pandas import DataFrame, Series def load_reduce(self): diff --git a/pandas/conftest.py b/pandas/conftest.py index e0adb37e7d2f5..8b1ab86278d2d 100644 --- a/pandas/conftest.py +++ b/pandas/conftest.py @@ -17,7 +17,6 @@ - Dtypes - Misc """ - from collections import abc from datetime import date, time, timedelta, timezone from decimal import Decimal @@ -31,13 +30,11 @@ import pytest from pytz import FixedOffset, utc -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.core import ops from pandas.core.indexes.api import Index, MultiIndex +from pandas.util import _test_decorators as td # ---------------------------------------------------------------- diff --git a/pandas/core/aggregation.py b/pandas/core/aggregation.py index 838722f60b380..75a7b96d91e1e 100644 --- a/pandas/core/aggregation.py +++ b/pandas/core/aggregation.py @@ -2,14 +2,13 @@ aggregation.py contains utility functions to handle multiple named and lambda kwarg aggregations in groupby and DataFrame/Series aggregation """ - from collections import defaultdict from functools import partial from typing import Any, Callable, DefaultDict, List, Sequence, Tuple, Union from pandas.core.dtypes.common import is_dict_like, is_list_like -import pandas.core.common as com +from pandas.core import common as com from pandas.core.indexes.api import Index diff --git a/pandas/core/apply.py b/pandas/core/apply.py index 9c223d66b727b..ff575120ee1b1 100644 --- a/pandas/core/apply.py +++ b/pandas/core/apply.py @@ -15,7 +15,7 @@ from pandas.core.construction import create_series_with_explicit_dtype if TYPE_CHECKING: - from pandas import DataFrame, Series, Index + from pandas import DataFrame, Index, Series ResType = Dict[int, Any] diff --git a/pandas/core/arrays/categorical.py b/pandas/core/arrays/categorical.py index 1fedfa70cc469..148dd815bbc64 100644 --- a/pandas/core/arrays/categorical.py +++ b/pandas/core/arrays/categorical.py @@ -40,9 +40,8 @@ from pandas.core.dtypes.inference import is_hashable from pandas.core.dtypes.missing import is_valid_nat_for_dtype, isna, notna -from pandas.core import ops +from pandas.core import algorithms as algorithms, common as com, ops from pandas.core.accessor import PandasDelegate, delegate_names -import pandas.core.algorithms as algorithms from pandas.core.algorithms import _get_data_algo, factorize, take_1d, unique1d from pandas.core.array_algos.transforms import shift from pandas.core.arrays._mixins import _T, NDArrayBackedExtensionArray @@ -52,7 +51,6 @@ PandasObject, _shared_docs, ) -import pandas.core.common as com from pandas.core.construction import array, extract_array, sanitize_array from pandas.core.indexers import check_array_indexer, deprecate_ndim_indexing from pandas.core.missing import interpolate_2d @@ -520,7 +518,7 @@ def _from_inferred_categories( ------- Categorical """ - from pandas import Index, to_numeric, to_datetime, to_timedelta + from pandas import Index, to_datetime, to_numeric, to_timedelta cats = Index(inferred_categories) known_categories = ( @@ -1403,7 +1401,7 @@ def value_counts(self, dropna=True): -------- Series.value_counts """ - from pandas import Series, CategoricalIndex + from pandas import CategoricalIndex, Series code, cat = self._codes, self.categories ncat, mask = len(cat), 0 <= code diff --git a/pandas/core/arrays/datetimelike.py b/pandas/core/arrays/datetimelike.py index a306268cd8ede..e5c106496e3b7 100644 --- a/pandas/core/arrays/datetimelike.py +++ b/pandas/core/arrays/datetimelike.py @@ -52,12 +52,11 @@ from pandas.core.dtypes.inference import is_array_like from pandas.core.dtypes.missing import is_valid_nat_for_dtype, isna -from pandas.core import missing, nanops, ops +from pandas.core import common as com, missing, nanops, ops from pandas.core.algorithms import checked_add_with_arr, unique1d, value_counts from pandas.core.array_algos.transforms import shift from pandas.core.arrays._mixins import _T, NDArrayBackedExtensionArray from pandas.core.arrays.base import ExtensionArray, ExtensionOpsMixin -import pandas.core.common as com from pandas.core.construction import array, extract_array from pandas.core.indexers import check_array_indexer from pandas.core.ops.common import unpack_zerodim_and_defer @@ -959,7 +958,7 @@ def value_counts(self, dropna=False): ------- Series """ - from pandas import Series, Index + from pandas import Index, Series if dropna: values = self[~self.isna()]._data diff --git a/pandas/core/arrays/datetimes.py b/pandas/core/arrays/datetimes.py index fcfbaa4ac2a1c..632f4487e2f23 100644 --- a/pandas/core/arrays/datetimes.py +++ b/pandas/core/arrays/datetimes.py @@ -40,10 +40,10 @@ from pandas.core.dtypes.generic import ABCIndexClass, ABCPandasArray, ABCSeries from pandas.core.dtypes.missing import isna +from pandas.core import common as com from pandas.core.algorithms import checked_add_with_arr from pandas.core.arrays import datetimelike as dtl from pandas.core.arrays._ranges import generate_regular_range -import pandas.core.common as com from pandas.tseries.frequencies import get_period_alias from pandas.tseries.offsets import BDay, Day, Tick diff --git a/pandas/core/arrays/integer.py b/pandas/core/arrays/integer.py index df43b5d6115ba..4ec44e130292f 100644 --- a/pandas/core/arrays/integer.py +++ b/pandas/core/arrays/integer.py @@ -113,6 +113,7 @@ def __from_arrow__( Construct IntegerArray from pyarrow Array/ChunkedArray. """ import pyarrow # noqa: F811 + from pandas.core.arrays._arrow_utils import pyarrow_array_to_numpy_and_mask pyarrow_type = pyarrow.from_numpy_dtype(self.type) diff --git a/pandas/core/arrays/interval.py b/pandas/core/arrays/interval.py index c861d25afd13f..75ad636352600 100644 --- a/pandas/core/arrays/interval.py +++ b/pandas/core/arrays/interval.py @@ -34,10 +34,10 @@ ) from pandas.core.dtypes.missing import isna, notna +from pandas.core import common as com from pandas.core.algorithms import take, value_counts from pandas.core.arrays.base import ExtensionArray, _extension_array_shared_docs from pandas.core.arrays.categorical import Categorical -import pandas.core.common as com from pandas.core.construction import array from pandas.core.indexers import check_array_indexer from pandas.core.indexes.base import ensure_index @@ -1105,6 +1105,7 @@ def __arrow_array__(self, type=None): Convert myself into a pyarrow Array. """ import pyarrow + from pandas.core.arrays._arrow_utils import ArrowIntervalType try: diff --git a/pandas/core/arrays/period.py b/pandas/core/arrays/period.py index 4b4df3445be4e..15d97bb16a451 100644 --- a/pandas/core/arrays/period.py +++ b/pandas/core/arrays/period.py @@ -45,9 +45,8 @@ ) from pandas.core.dtypes.missing import isna, notna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com from pandas.core.arrays import datetimelike as dtl -import pandas.core.common as com def _field_accessor(name: str, docstring=None): @@ -299,6 +298,7 @@ def __arrow_array__(self, type=None): Convert myself into a pyarrow Array. """ import pyarrow + from pandas.core.arrays._arrow_utils import ArrowPeriodType if type is not None: diff --git a/pandas/core/arrays/sparse/accessor.py b/pandas/core/arrays/sparse/accessor.py index 8a30d2b954b55..9bbeecd50ad8d 100644 --- a/pandas/core/arrays/sparse/accessor.py +++ b/pandas/core/arrays/sparse/accessor.py @@ -1,5 +1,4 @@ """Sparse accessor""" - import numpy as np from pandas.compat._optional import import_optional_dependency @@ -87,8 +86,8 @@ def from_coo(cls, A, dense_index=False): 1 0 3.0 dtype: Sparse[float64, nan] """ - from pandas.core.arrays.sparse.scipy_sparse import _coo_to_sparse_series from pandas import Series + from pandas.core.arrays.sparse.scipy_sparse import _coo_to_sparse_series result = _coo_to_sparse_series(A, dense_index=dense_index) result = Series(result.array, index=result.index, copy=False) @@ -253,9 +252,10 @@ def from_spmatrix(cls, data, index=None, columns=None): 1 0.0 1.0 0.0 2 0.0 0.0 1.0 """ - from pandas import DataFrame from pandas._libs.sparse import IntIndex + from pandas import DataFrame + data = data.tocsc() index, columns = cls._prep_index(data, index, columns) n_rows, n_columns = data.shape @@ -354,7 +354,7 @@ def density(self) -> float: @staticmethod def _prep_index(data, index, columns): - import pandas.core.indexes.base as ibase + from pandas.core.indexes import base as ibase from pandas.core.indexes.api import ensure_index N, K = data.shape diff --git a/pandas/core/arrays/sparse/array.py b/pandas/core/arrays/sparse/array.py index 4996a10002c63..a2d26672e0168 100644 --- a/pandas/core/arrays/sparse/array.py +++ b/pandas/core/arrays/sparse/array.py @@ -9,12 +9,10 @@ import numpy as np -from pandas._libs import lib -import pandas._libs.sparse as splib +from pandas._libs import lib, sparse as splib from pandas._libs.sparse import BlockIndex, IntIndex, SparseIndex from pandas._libs.tslibs import NaT from pandas._typing import Scalar -import pandas.compat as compat from pandas.compat.numpy import function as nv from pandas.errors import PerformanceWarning @@ -39,19 +37,18 @@ from pandas.core.dtypes.generic import ABCIndexClass, ABCSeries from pandas.core.dtypes.missing import isna, na_value_for_dtype, notna -import pandas.core.algorithms as algos +from pandas import compat as compat +from pandas.core import algorithms as algos, common as com, ops as ops from pandas.core.arrays import ExtensionArray, ExtensionOpsMixin from pandas.core.arrays.sparse.dtype import SparseDtype from pandas.core.base import PandasObject -import pandas.core.common as com from pandas.core.construction import extract_array, sanitize_array from pandas.core.indexers import check_array_indexer from pandas.core.missing import interpolate_2d from pandas.core.nanops import check_below_min_count -import pandas.core.ops as ops from pandas.core.ops.common import unpack_zerodim_and_defer -import pandas.io.formats.printing as printing +from pandas.io.formats import printing as printing # ---------------------------------------------------------------------------- # Array diff --git a/pandas/core/arrays/timedeltas.py b/pandas/core/arrays/timedeltas.py index a378423df788b..7a756ce5c45c6 100644 --- a/pandas/core/arrays/timedeltas.py +++ b/pandas/core/arrays/timedeltas.py @@ -27,11 +27,10 @@ from pandas.core.dtypes.generic import ABCSeries, ABCTimedeltaIndex from pandas.core.dtypes.missing import isna -from pandas.core import nanops +from pandas.core import common as com, nanops from pandas.core.algorithms import checked_add_with_arr from pandas.core.arrays import datetimelike as dtl from pandas.core.arrays._ranges import generate_regular_range -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.ops.common import unpack_zerodim_and_defer diff --git a/pandas/core/base.py b/pandas/core/base.py index b62ef668df5e1..930f93ec5b587 100644 --- a/pandas/core/base.py +++ b/pandas/core/base.py @@ -1,14 +1,13 @@ """ Base and utility classes for pandas objects. """ - import builtins import textwrap from typing import Any, Dict, FrozenSet, List, Optional, Union import numpy as np -import pandas._libs.lib as lib +from pandas._libs import lib as lib from pandas.compat import PYPY from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError @@ -26,12 +25,11 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCIndexClass, ABCSeries from pandas.core.dtypes.missing import isna -from pandas.core import algorithms, common as com +from pandas.core import algorithms, common as com, nanops as nanops from pandas.core.accessor import DirNamesMixin from pandas.core.algorithms import duplicated, unique1d, value_counts from pandas.core.arrays import ExtensionArray from pandas.core.construction import create_series_with_explicit_dtype -import pandas.core.nanops as nanops _shared_docs: Dict[str, str] = dict() _indexops_doc_kwargs = dict( diff --git a/pandas/core/computation/align.py b/pandas/core/computation/align.py index 82867cf9dcd29..c100fec1cbfab 100644 --- a/pandas/core/computation/align.py +++ b/pandas/core/computation/align.py @@ -1,7 +1,6 @@ """ Core eval alignment algorithms. """ - from functools import partial, wraps from typing import Dict, Optional, Sequence, Tuple, Type, Union import warnings @@ -13,8 +12,8 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries +from pandas.core import common as com from pandas.core.base import PandasObject -import pandas.core.common as com from pandas.core.computation.common import result_type_many diff --git a/pandas/core/computation/engines.py b/pandas/core/computation/engines.py index 9c5388faae1bd..e2edafa4cc1bc 100644 --- a/pandas/core/computation/engines.py +++ b/pandas/core/computation/engines.py @@ -1,14 +1,13 @@ """ Engine classes for :func:`~pandas.eval` """ - import abc from typing import Dict, Type from pandas.core.computation.align import align_terms, reconstruct_object from pandas.core.computation.ops import _mathops, _reductions -import pandas.io.formats.printing as printing +from pandas.io.formats import printing as printing _ne_builtins = frozenset(_mathops + _reductions) diff --git a/pandas/core/computation/expr.py b/pandas/core/computation/expr.py index fcccc24ed7615..848ffc3b3cd14 100644 --- a/pandas/core/computation/expr.py +++ b/pandas/core/computation/expr.py @@ -1,7 +1,6 @@ """ :func:`~pandas.eval` parsers. """ - import ast from functools import partial, reduce from keyword import iskeyword @@ -10,7 +9,7 @@ import numpy as np -import pandas.core.common as com +from pandas.core import common as com from pandas.core.computation.ops import ( _LOCAL_TAG, BinOp, @@ -32,7 +31,7 @@ from pandas.core.computation.parsing import clean_backtick_quoted_toks, tokenize_string from pandas.core.computation.scope import Scope -import pandas.io.formats.printing as printing +from pandas.io.formats import printing as printing def _rewrite_assign(tok: Tuple[int, str]) -> Tuple[int, str]: diff --git a/pandas/core/computation/ops.py b/pandas/core/computation/ops.py index bc9ff7c44b689..c6ccb3a5bc8a9 100644 --- a/pandas/core/computation/ops.py +++ b/pandas/core/computation/ops.py @@ -1,7 +1,6 @@ """ Operator classes for eval. """ - from datetime import datetime from distutils.version import LooseVersion from functools import partial @@ -14,7 +13,7 @@ from pandas.core.dtypes.common import is_list_like, is_scalar -import pandas.core.common as com +from pandas.core import common as com from pandas.core.computation.common import _ensure_decoded, result_type_many from pandas.core.computation.scope import _DEFAULT_GLOBALS diff --git a/pandas/core/computation/pytables.py b/pandas/core/computation/pytables.py index 001eb1789007f..74dcd1932c39c 100644 --- a/pandas/core/computation/pytables.py +++ b/pandas/core/computation/pytables.py @@ -1,5 +1,4 @@ """ manage PyTables query interface via Expressions """ - import ast from functools import partial from typing import Any, Dict, Optional, Tuple @@ -12,7 +11,7 @@ from pandas.core.dtypes.common import is_list_like import pandas as pd -import pandas.core.common as com +from pandas.core import common as com from pandas.core.computation import expr, ops, scope as _scope from pandas.core.computation.common import _ensure_decoded from pandas.core.computation.expr import BaseExprVisitor diff --git a/pandas/core/config_init.py b/pandas/core/config_init.py index 54d23fe8829e6..61fefe14df0c7 100644 --- a/pandas/core/config_init.py +++ b/pandas/core/config_init.py @@ -11,7 +11,7 @@ """ import warnings -import pandas._config.config as cf +from pandas._config import config as cf from pandas._config.config import ( is_bool, is_callable, @@ -645,8 +645,10 @@ def register_plotting_backend_cb(key): def register_converter_cb(key): - from pandas.plotting import register_matplotlib_converters - from pandas.plotting import deregister_matplotlib_converters + from pandas.plotting import ( + deregister_matplotlib_converters, + register_matplotlib_converters, + ) if cf.get_option(key): register_matplotlib_converters() diff --git a/pandas/core/construction.py b/pandas/core/construction.py index 9ac661f97a56e..ccbd2cb0141c9 100644 --- a/pandas/core/construction.py +++ b/pandas/core/construction.py @@ -4,12 +4,11 @@ These should not depend on core.internals. """ - from collections import abc from typing import TYPE_CHECKING, Any, Optional, Sequence, Union, cast import numpy as np -import numpy.ma as ma +from numpy import ma as ma from pandas._libs import lib from pandas._libs.tslibs import IncompatibleFrequency, OutOfBoundsDatetime @@ -45,12 +44,12 @@ ) from pandas.core.dtypes.missing import isna -import pandas.core.common as com +from pandas.core import common as com if TYPE_CHECKING: - from pandas.core.series import Series # noqa: F401 - from pandas.core.indexes.api import Index # noqa: F401 from pandas.core.arrays import ExtensionArray # noqa: F401 + from pandas.core.indexes.api import Index # noqa: F401 + from pandas.core.series import Series # noqa: F401 def array( @@ -255,14 +254,14 @@ def array( ValueError: Cannot pass scalar '1' to 'pandas.array'. """ from pandas.core.arrays import ( - period_array, BooleanArray, + DatetimeArray, IntegerArray, IntervalArray, PandasArray, - DatetimeArray, - TimedeltaArray, StringArray, + TimedeltaArray, + period_array, ) if lib.is_scalar(data): diff --git a/pandas/core/dtypes/cast.py b/pandas/core/dtypes/cast.py index d0417d51da497..fcd61f9d3a424 100644 --- a/pandas/core/dtypes/cast.py +++ b/pandas/core/dtypes/cast.py @@ -1,7 +1,6 @@ """ Routines for casting. """ - from datetime import date, datetime, timedelta from typing import TYPE_CHECKING, Any, List, Optional, Tuple, Type @@ -1243,6 +1242,7 @@ def try_datetime(v): # if so coerce to a DatetimeIndex; if they are not the same, # then these stay as object dtype, xref GH19671 from pandas._libs.tslibs import conversion + from pandas import DatetimeIndex try: @@ -1302,8 +1302,8 @@ def maybe_cast_to_datetime(value, dtype, errors: str = "raise"): try to cast the array/value to a datetimelike dtype, converting float nan to iNaT """ - from pandas.core.tools.timedeltas import to_timedelta from pandas.core.tools.datetimes import to_datetime + from pandas.core.tools.timedeltas import to_timedelta if dtype is not None: if isinstance(dtype, str): diff --git a/pandas/core/dtypes/dtypes.py b/pandas/core/dtypes/dtypes.py index a9d2430717e4f..59429887c6650 100644 --- a/pandas/core/dtypes/dtypes.py +++ b/pandas/core/dtypes/dtypes.py @@ -1,7 +1,6 @@ """ Define extension dtypes. """ - import re from typing import ( TYPE_CHECKING, @@ -30,12 +29,13 @@ if TYPE_CHECKING: import pyarrow # noqa: F401 + + from pandas import Categorical # noqa: F401 from pandas.core.arrays import ( # noqa: F401 + DatetimeArray, IntervalArray, PeriodArray, - DatetimeArray, ) - from pandas import Categorical # noqa: F401 str_type = str @@ -480,12 +480,13 @@ def __repr__(self) -> str_type: @staticmethod def _hash_categories(categories, ordered: Ordered = True) -> int: + from pandas.core.dtypes.common import DT64NS_DTYPE, is_datetime64tz_dtype + from pandas.core.util.hashing import ( - hash_array, _combine_hash_arrays, + hash_array, hash_tuples, ) - from pandas.core.dtypes.common import is_datetime64tz_dtype, DT64NS_DTYPE if len(categories) and isinstance(categories[0], tuple): # assumes if any individual category is a tuple, then all our. ATM @@ -1028,6 +1029,7 @@ def __from_arrow__( Construct PeriodArray from pyarrow Array/ChunkedArray. """ import pyarrow # noqa: F811 + from pandas.core.arrays import PeriodArray from pandas.core.arrays._arrow_utils import pyarrow_array_to_numpy_and_mask @@ -1225,6 +1227,7 @@ def __from_arrow__( Construct IntervalArray from pyarrow Array/ChunkedArray. """ import pyarrow # noqa: F811 + from pandas.core.arrays import IntervalArray if isinstance(array, pyarrow.Array): diff --git a/pandas/core/dtypes/missing.py b/pandas/core/dtypes/missing.py index 75188ad5b00eb..594fcb89c23ca 100644 --- a/pandas/core/dtypes/missing.py +++ b/pandas/core/dtypes/missing.py @@ -7,8 +7,7 @@ from pandas._config import get_option -from pandas._libs import lib -import pandas._libs.missing as libmissing +from pandas._libs import lib, missing as libmissing from pandas._libs.tslibs import NaT, iNaT from pandas._typing import DtypeObj diff --git a/pandas/core/frame.py b/pandas/core/frame.py index 87041341ac3a6..7ae6c4b2c4c72 100644 --- a/pandas/core/frame.py +++ b/pandas/core/frame.py @@ -8,7 +8,6 @@ alignment and a host of useful data manipulation methods having to do with the labeling information """ - import collections from collections import abc import datetime @@ -37,7 +36,7 @@ import warnings import numpy as np -import numpy.ma as ma +from numpy import ma as ma from pandas._config import get_option @@ -147,6 +146,7 @@ if TYPE_CHECKING: from pandas.core.groupby.generic import DataFrameGroupBy + from pandas.io.formats.style import Styler # --------------------------------------------------------------------- @@ -463,7 +463,7 @@ def __init__( elif isinstance(data, dict): mgr = init_dict(data, index, columns, dtype=dtype) elif isinstance(data, ma.MaskedArray): - import numpy.ma.mrecords as mrecords + from numpy.ma import mrecords as mrecords # masked recarray if isinstance(data, mrecords.MaskedRecords): @@ -5160,8 +5160,9 @@ def duplicated( 4 True dtype: bool """ + from pandas._libs.hashtable import _SIZE_HINT_LIMIT, duplicated_int64 + from pandas.core.sorting import get_group_index - from pandas._libs.hashtable import duplicated_int64, _SIZE_HINT_LIMIT if self.empty: return self._constructor_sliced(dtype=bool) @@ -6155,7 +6156,7 @@ def combine_first(self, other: "DataFrame") -> "DataFrame": 1 0.0 3.0 1.0 2 NaN 3.0 1.0 """ - import pandas.core.computation.expressions as expressions + from pandas.core.computation import expressions as expressions def extract_values(arr): # Does two things: @@ -6304,7 +6305,7 @@ def update( 1 2 500.0 2 3 6.0 """ - import pandas.core.computation.expressions as expressions + from pandas.core.computation import expressions as expressions # TODO: Support other joins if join != "left": # pragma: no cover @@ -7812,8 +7813,8 @@ def join( def _join_compat( self, other, on=None, how="left", lsuffix="", rsuffix="", sort=False ): - from pandas.core.reshape.merge import merge from pandas.core.reshape.concat import concat + from pandas.core.reshape.merge import merge if isinstance(other, Series): if other.name is None: diff --git a/pandas/core/generic.py b/pandas/core/generic.py index 571fcc67f3bb5..5c6f4afd5e5cf 100644 --- a/pandas/core/generic.py +++ b/pandas/core/generic.py @@ -85,15 +85,18 @@ from pandas.core.dtypes.missing import isna, notna import pandas as pd -from pandas.core import missing, nanops -import pandas.core.algorithms as algos +from pandas.core import ( + algorithms as algos, + common as com, + indexing as indexing, + missing, + nanops, +) from pandas.core.base import PandasObject, SelectionMixin -import pandas.core.common as com from pandas.core.construction import create_series_with_explicit_dtype from pandas.core.indexes.api import Index, MultiIndex, RangeIndex, ensure_index from pandas.core.indexes.datetimes import DatetimeIndex from pandas.core.indexes.period import Period, PeriodIndex -import pandas.core.indexing as indexing from pandas.core.internals import BlockManager from pandas.core.missing import find_valid_index from pandas.core.ops import _align_method_FRAME diff --git a/pandas/core/groupby/generic.py b/pandas/core/groupby/generic.py index 6f956a3dcc9b6..f5a702cbc766a 100644 --- a/pandas/core/groupby/generic.py +++ b/pandas/core/groupby/generic.py @@ -53,15 +53,14 @@ ) from pandas.core.dtypes.missing import isna, notna +from pandas.core import algorithms as algorithms, common as com from pandas.core.aggregation import ( is_multi_agg_with_relabel, maybe_mangle_lambdas, normalize_keyword_aggregation, validate_func_kwargs, ) -import pandas.core.algorithms as algorithms from pandas.core.base import DataError, SpecificationError -import pandas.core.common as com from pandas.core.construction import create_series_with_explicit_dtype from pandas.core.frame import DataFrame from pandas.core.generic import ABCDataFrame, ABCSeries, NDFrame @@ -73,8 +72,8 @@ _transform_template, get_groupby, ) +from pandas.core.indexes import base as ibase from pandas.core.indexes.api import Index, MultiIndex, all_indexes_same -import pandas.core.indexes.base as ibase from pandas.core.internals import BlockManager, make_block from pandas.core.series import Series from pandas.core.util.numba_ import ( @@ -665,8 +664,8 @@ def value_counts( self, normalize=False, sort=True, ascending=False, bins=None, dropna=True ): - from pandas.core.reshape.tile import cut from pandas.core.reshape.merge import _get_join_indexers + from pandas.core.reshape.tile import cut if bins is not None and not np.iterable(bins): # scalar bins cannot be done at top level diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index d039b715b3c08..c8e70476af4d8 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -6,7 +6,6 @@ class providing the base-class of operations. (defined in pandas.core.groupby.generic) expose these user-facing objects to provide specific functionality. """ - from contextlib import contextmanager import datetime from functools import partial, wraps @@ -34,8 +33,7 @@ class providing the base-class of operations. from pandas._config.config import option_context -from pandas._libs import Timestamp -import pandas._libs.groupby as libgroupby +from pandas._libs import Timestamp, groupby as libgroupby from pandas._typing import F, FrameOrSeries, FrameOrSeriesUnion, Scalar from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError @@ -54,11 +52,9 @@ class providing the base-class of operations. ) from pandas.core.dtypes.missing import isna, notna -from pandas.core import nanops -import pandas.core.algorithms as algorithms +from pandas.core import algorithms as algorithms, common as com, nanops from pandas.core.arrays import Categorical, DatetimeArray from pandas.core.base import DataError, PandasObject, SelectionMixin -import pandas.core.common as com from pandas.core.frame import DataFrame from pandas.core.generic import NDFrame from pandas.core.groupby import base, ops diff --git a/pandas/core/groupby/grouper.py b/pandas/core/groupby/grouper.py index 67003dffb90bb..6417c1c6c2434 100644 --- a/pandas/core/groupby/grouper.py +++ b/pandas/core/groupby/grouper.py @@ -20,9 +20,8 @@ ) from pandas.core.dtypes.generic import ABCSeries -import pandas.core.algorithms as algorithms +from pandas.core import algorithms as algorithms, common as com from pandas.core.arrays import Categorical, ExtensionArray -import pandas.core.common as com from pandas.core.frame import DataFrame from pandas.core.groupby import ops from pandas.core.groupby.categorical import recode_for_groupby, recode_from_groupby diff --git a/pandas/core/groupby/ops.py b/pandas/core/groupby/ops.py index 74db87f46c5e2..853008c2e9dda 100644 --- a/pandas/core/groupby/ops.py +++ b/pandas/core/groupby/ops.py @@ -5,15 +5,18 @@ operations, primarily in cython. These classes (BaseGrouper and BinGrouper) are contained *in* the SeriesGroupBy and DataFrameGroupBy objects. """ - import collections from typing import List, Optional, Sequence, Tuple, Type import numpy as np -from pandas._libs import NaT, iNaT, lib -import pandas._libs.groupby as libgroupby -import pandas._libs.reduction as libreduction +from pandas._libs import ( + NaT, + groupby as libgroupby, + iNaT, + lib, + reduction as libreduction, +) from pandas._typing import F, FrameOrSeries, Label from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly @@ -39,9 +42,8 @@ ) from pandas.core.dtypes.missing import _maybe_fill, isna -import pandas.core.algorithms as algorithms +from pandas.core import algorithms as algorithms, common as com from pandas.core.base import SelectionMixin -import pandas.core.common as com from pandas.core.frame import DataFrame from pandas.core.generic import NDFrame from pandas.core.groupby import base, grouper diff --git a/pandas/core/indexes/api.py b/pandas/core/indexes/api.py index 4c5a70f4088ee..57e1f3ce30dca 100644 --- a/pandas/core/indexes/api.py +++ b/pandas/core/indexes/api.py @@ -4,7 +4,7 @@ from pandas._libs import NaT, lib from pandas.errors import InvalidIndexError -import pandas.core.common as com +from pandas.core import common as com from pandas.core.indexes.base import ( Index, _new_Index, diff --git a/pandas/core/indexes/base.py b/pandas/core/indexes/base.py index 2f12a2e4c27ea..dc1fc88ed0fd0 100644 --- a/pandas/core/indexes/base.py +++ b/pandas/core/indexes/base.py @@ -16,8 +16,7 @@ import numpy as np -from pandas._libs import algos as libalgos, index as libindex, lib -import pandas._libs.join as libjoin +from pandas._libs import algos as libalgos, index as libindex, join as libjoin, lib from pandas._libs.lib import is_datetime_array, no_default from pandas._libs.tslibs import OutOfBoundsDatetime, Timestamp from pandas._libs.tslibs.period import IncompatibleFrequency @@ -73,16 +72,13 @@ ) from pandas.core.dtypes.missing import array_equivalent, isna -from pandas.core import ops +from pandas.core import algorithms as algos, common as com, missing as missing, ops from pandas.core.accessor import CachedAccessor -import pandas.core.algorithms as algos from pandas.core.arrays import Categorical, ExtensionArray from pandas.core.arrays.datetimes import tz_to_dtype, validate_tz_from_dtype from pandas.core.base import IndexOpsMixin, PandasObject -import pandas.core.common as com from pandas.core.indexers import deprecate_ndim_indexing from pandas.core.indexes.frozen import FrozenList -import pandas.core.missing as missing from pandas.core.ops import get_op_result_name from pandas.core.ops.invalid import make_invalid_op from pandas.core.sorting import ensure_key_mapped @@ -5723,9 +5719,9 @@ def _maybe_cast_data_without_dtype(subarr): """ # Runtime import needed bc IntervalArray imports Index from pandas.core.arrays import ( + DatetimeArray, IntervalArray, PeriodArray, - DatetimeArray, TimedeltaArray, ) diff --git a/pandas/core/indexes/category.py b/pandas/core/indexes/category.py index b0b008de69a94..91288b6e7a7c1 100644 --- a/pandas/core/indexes/category.py +++ b/pandas/core/indexes/category.py @@ -22,15 +22,13 @@ from pandas.core.dtypes.dtypes import CategoricalDtype from pandas.core.dtypes.missing import is_valid_nat_for_dtype, isna -from pandas.core import accessor +from pandas.core import accessor, common as com, missing as missing from pandas.core.algorithms import take_1d from pandas.core.arrays.categorical import Categorical, contains, recode_for_categories -import pandas.core.common as com from pandas.core.construction import extract_array -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import Index, _index_shared_docs, maybe_extract_name from pandas.core.indexes.extension import ExtensionIndex, inherit_names -import pandas.core.missing as missing from pandas.core.ops import get_op_result_name _index_doc_kwargs = dict(ibase._index_doc_kwargs) diff --git a/pandas/core/indexes/datetimelike.py b/pandas/core/indexes/datetimelike.py index 7be6aa50fa16b..2329517ba73ae 100644 --- a/pandas/core/indexes/datetimelike.py +++ b/pandas/core/indexes/datetimelike.py @@ -26,13 +26,12 @@ from pandas.core.dtypes.concat import concat_compat from pandas.core.dtypes.generic import ABCIndex, ABCIndexClass, ABCSeries -from pandas.core import algorithms +from pandas.core import algorithms, common as com from pandas.core.arrays import DatetimeArray, PeriodArray, TimedeltaArray from pandas.core.arrays.datetimelike import DatetimeLikeArrayMixin from pandas.core.base import IndexOpsMixin -import pandas.core.common as com from pandas.core.construction import array as pd_array, extract_array -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import Index, _index_shared_docs from pandas.core.indexes.extension import ( ExtensionIndex, diff --git a/pandas/core/indexes/datetimes.py b/pandas/core/indexes/datetimes.py index 0317d0b93859b..998cdd99a3bba 100644 --- a/pandas/core/indexes/datetimes.py +++ b/pandas/core/indexes/datetimes.py @@ -23,8 +23,8 @@ ) from pandas.core.dtypes.missing import is_valid_nat_for_dtype +from pandas.core import common as com from pandas.core.arrays.datetimes import DatetimeArray, tz_to_dtype -import pandas.core.common as com from pandas.core.indexes.base import Index, maybe_extract_name from pandas.core.indexes.datetimelike import DatetimeTimedeltaMixin from pandas.core.indexes.extension import inherit_names diff --git a/pandas/core/indexes/interval.py b/pandas/core/indexes/interval.py index 9548ebbd9c3b2..fc61aea544ac3 100644 --- a/pandas/core/indexes/interval.py +++ b/pandas/core/indexes/interval.py @@ -38,11 +38,11 @@ ) from pandas.core.dtypes.missing import isna +from pandas.core import common as com from pandas.core.algorithms import take_1d from pandas.core.arrays.interval import IntervalArray, _interval_shared_docs -import pandas.core.common as com from pandas.core.indexers import is_valid_positional_slice -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import ( Index, _index_shared_docs, diff --git a/pandas/core/indexes/multi.py b/pandas/core/indexes/multi.py index 15db6c51a1f2f..01177161b2270 100644 --- a/pandas/core/indexes/multi.py +++ b/pandas/core/indexes/multi.py @@ -40,15 +40,13 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCDatetimeIndex, ABCTimedeltaIndex from pandas.core.dtypes.missing import array_equivalent, isna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com, missing as missing from pandas.core.arrays import Categorical from pandas.core.arrays.categorical import factorize_from_iterables -import pandas.core.common as com -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import Index, _index_shared_docs, ensure_index from pandas.core.indexes.frozen import FrozenList from pandas.core.indexes.numeric import Int64Index -import pandas.core.missing as missing from pandas.core.sorting import ( get_group_index, indexer_from_factorized, diff --git a/pandas/core/indexes/numeric.py b/pandas/core/indexes/numeric.py index 5020a25c88ff4..908872942f1eb 100644 --- a/pandas/core/indexes/numeric.py +++ b/pandas/core/indexes/numeric.py @@ -30,8 +30,7 @@ ) from pandas.core.dtypes.missing import isna -from pandas.core import algorithms -import pandas.core.common as com +from pandas.core import algorithms, common as com from pandas.core.indexes.base import Index, maybe_extract_name from pandas.core.ops import get_op_result_name diff --git a/pandas/core/indexes/period.py b/pandas/core/indexes/period.py index 03e11b652477f..48b35aa6a8f1e 100644 --- a/pandas/core/indexes/period.py +++ b/pandas/core/indexes/period.py @@ -24,14 +24,14 @@ ) from pandas.core.dtypes.dtypes import PeriodDtype +from pandas.core import common as com from pandas.core.arrays.period import ( PeriodArray, period_array, raise_on_incompatible, validate_dtype_freq, ) -import pandas.core.common as com -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import ( _index_shared_docs, ensure_index, diff --git a/pandas/core/indexes/range.py b/pandas/core/indexes/range.py index 6d9fd6efe54a3..0e9e6f0d28e57 100644 --- a/pandas/core/indexes/range.py +++ b/pandas/core/indexes/range.py @@ -9,7 +9,6 @@ from pandas._libs import index as libindex from pandas._libs.lib import no_default from pandas._typing import Label -import pandas.compat as compat from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, cache_readonly, doc @@ -25,10 +24,10 @@ ) from pandas.core.dtypes.generic import ABCTimedeltaIndex -from pandas.core import ops -import pandas.core.common as com +from pandas import compat as compat +from pandas.core import common as com, ops from pandas.core.construction import extract_array -import pandas.core.indexes.base as ibase +from pandas.core.indexes import base as ibase from pandas.core.indexes.base import _index_shared_docs, maybe_extract_name from pandas.core.indexes.numeric import Int64Index from pandas.core.ops.common import unpack_zerodim_and_defer diff --git a/pandas/core/indexes/timedeltas.py b/pandas/core/indexes/timedeltas.py index dccc8369c5366..5c36d07e19e8c 100644 --- a/pandas/core/indexes/timedeltas.py +++ b/pandas/core/indexes/timedeltas.py @@ -1,5 +1,4 @@ """ implement the TimedeltaIndex """ - from pandas._libs import index as libindex, lib from pandas._libs.tslibs import Timedelta, to_offset from pandas._typing import DtypeObj, Label @@ -16,9 +15,9 @@ pandas_dtype, ) +from pandas.core import common as com from pandas.core.arrays import datetimelike as dtl from pandas.core.arrays.timedeltas import TimedeltaArray -import pandas.core.common as com from pandas.core.indexes.base import Index, maybe_extract_name from pandas.core.indexes.datetimelike import ( DatetimeIndexOpsMixin, diff --git a/pandas/core/indexing.py b/pandas/core/indexing.py index 708b687434327..189d1a0d1bcfc 100644 --- a/pandas/core/indexing.py +++ b/pandas/core/indexing.py @@ -24,7 +24,7 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCMultiIndex, ABCSeries from pandas.core.dtypes.missing import _infer_fill_value, isna -import pandas.core.common as com +from pandas.core import common as com from pandas.core.construction import array as pd_array from pandas.core.indexers import ( check_array_indexer, diff --git a/pandas/core/internals/blocks.py b/pandas/core/internals/blocks.py index d8779dae7c384..f640fd229c4d7 100644 --- a/pandas/core/internals/blocks.py +++ b/pandas/core/internals/blocks.py @@ -6,8 +6,7 @@ import numpy as np -from pandas._libs import NaT, algos as libalgos, lib, writers -import pandas._libs.internals as libinternals +from pandas._libs import NaT, algos as libalgos, internals as libinternals, lib, writers from pandas._libs.internals import BlockPlacement from pandas._libs.tslibs import conversion from pandas._libs.tslibs.timezones import tz_compare @@ -58,7 +57,7 @@ ) from pandas.core.dtypes.missing import _isna_compat, is_valid_nat_for_dtype, isna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com, missing as missing from pandas.core.array_algos.transforms import shift from pandas.core.arrays import ( Categorical, @@ -69,14 +68,12 @@ TimedeltaArray, ) from pandas.core.base import PandasObject -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.indexers import ( check_setitem_lengths, is_empty_indexer, is_scalar_indexer, ) -import pandas.core.missing as missing from pandas.core.nanops import nanpercentile if TYPE_CHECKING: @@ -1296,7 +1293,7 @@ def where( ------- List[Block] """ - import pandas.core.computation.expressions as expressions + from pandas.core.computation import expressions as expressions cond = _extract_bool_array(cond) assert not isinstance(other, (ABCIndexClass, ABCSeries, ABCDataFrame)) diff --git a/pandas/core/internals/concat.py b/pandas/core/internals/concat.py index 2cc7461986c8f..d6300ca8925ff 100644 --- a/pandas/core/internals/concat.py +++ b/pandas/core/internals/concat.py @@ -22,7 +22,7 @@ from pandas.core.dtypes.concat import concat_compat from pandas.core.dtypes.missing import isna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos from pandas.core.arrays import ExtensionArray from pandas.core.internals.blocks import make_block from pandas.core.internals.managers import BlockManager diff --git a/pandas/core/internals/construction.py b/pandas/core/internals/construction.py index 4b9db810dead0..455ba49294a74 100644 --- a/pandas/core/internals/construction.py +++ b/pandas/core/internals/construction.py @@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple, Union import numpy as np -import numpy.ma as ma +from numpy import ma as ma from pandas._libs import lib from pandas._typing import Axis, DtypeObj, Scalar diff --git a/pandas/core/internals/managers.py b/pandas/core/internals/managers.py index c82670106d3b6..d8d41756a2521 100644 --- a/pandas/core/internals/managers.py +++ b/pandas/core/internals/managers.py @@ -30,11 +30,10 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries from pandas.core.dtypes.missing import array_equivalent, isna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com from pandas.core.arrays import ExtensionArray from pandas.core.arrays.sparse import SparseDtype from pandas.core.base import PandasObject -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.indexers import maybe_convert_indices from pandas.core.indexes.api import Index, ensure_index diff --git a/pandas/core/internals/ops.py b/pandas/core/internals/ops.py index fd9a9a5ef6c93..6eedf72726acb 100644 --- a/pandas/core/internals/ops.py +++ b/pandas/core/internals/ops.py @@ -5,8 +5,8 @@ from pandas._typing import ArrayLike if TYPE_CHECKING: - from pandas.core.internals.managers import BlockManager # noqa:F401 from pandas.core.internals.blocks import Block # noqa:F401 + from pandas.core.internals.managers import BlockManager # noqa:F401 def operate_blockwise( diff --git a/pandas/core/ops/array_ops.py b/pandas/core/ops/array_ops.py index 3379ee56b6ad0..12300002b25ea 100644 --- a/pandas/core/ops/array_ops.py +++ b/pandas/core/ops/array_ops.py @@ -136,7 +136,7 @@ def na_arithmetic_op(left, right, op, is_cmp: bool = False): ------ TypeError : invalid operation """ - import pandas.core.computation.expressions as expressions + from pandas.core.computation import expressions as expressions try: result = expressions.evaluate(op, left, right) diff --git a/pandas/core/resample.py b/pandas/core/resample.py index bfdfc65723433..b526069ef23ba 100644 --- a/pandas/core/resample.py +++ b/pandas/core/resample.py @@ -21,7 +21,7 @@ from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos from pandas.core.base import DataError, ShallowMixin from pandas.core.generic import NDFrame, _shared_docs from pandas.core.groupby.base import GroupByMixin diff --git a/pandas/core/reshape/concat.py b/pandas/core/reshape/concat.py index 9e8fb643791f2..4e0ec7810b071 100644 --- a/pandas/core/reshape/concat.py +++ b/pandas/core/reshape/concat.py @@ -1,7 +1,6 @@ """ Concat routines. """ - from collections import abc from typing import TYPE_CHECKING, Iterable, List, Mapping, Union, overload @@ -12,11 +11,12 @@ from pandas.core.dtypes.concat import concat_compat from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries +from pandas.core import common as com from pandas.core.arrays.categorical import ( factorize_from_iterable, factorize_from_iterables, ) -import pandas.core.common as com +from pandas.core.indexes import base as ibase from pandas.core.indexes.api import ( Index, MultiIndex, @@ -25,7 +25,6 @@ get_consensus_names, get_objs_combined_axis, ) -import pandas.core.indexes.base as ibase from pandas.core.internals import concatenate_block_managers if TYPE_CHECKING: diff --git a/pandas/core/reshape/melt.py b/pandas/core/reshape/melt.py index 923b9e7462d8b..4ef66b0baf62d 100644 --- a/pandas/core/reshape/melt.py +++ b/pandas/core/reshape/melt.py @@ -10,8 +10,8 @@ from pandas.core.dtypes.concat import concat_compat from pandas.core.dtypes.missing import notna +from pandas.core import common as com from pandas.core.arrays import Categorical -import pandas.core.common as com from pandas.core.indexes.api import Index, MultiIndex from pandas.core.reshape.concat import concat from pandas.core.shared_docs import _shared_docs diff --git a/pandas/core/reshape/merge.py b/pandas/core/reshape/merge.py index 27b331babe692..bf67d2894854e 100644 --- a/pandas/core/reshape/merge.py +++ b/pandas/core/reshape/merge.py @@ -1,7 +1,6 @@ """ SQL-style merge routines """ - import copy import datetime from functools import partial @@ -11,8 +10,7 @@ import numpy as np -from pandas._libs import Timedelta, hashtable as libhashtable, lib -import pandas._libs.join as libjoin +from pandas._libs import Timedelta, hashtable as libhashtable, join as libjoin, lib from pandas._typing import ArrayLike, FrameOrSeries from pandas.errors import MergeError from pandas.util._decorators import Appender, Substitution @@ -41,10 +39,8 @@ from pandas.core.dtypes.missing import isna, na_value_for_dtype from pandas import Categorical, Index, MultiIndex -from pandas.core import groupby -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com, groupby from pandas.core.arrays.categorical import recode_for_categories -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.frame import _merge_doc from pandas.core.internals import concatenate_block_managers diff --git a/pandas/core/reshape/pivot.py b/pandas/core/reshape/pivot.py index ea5916eff3afa..0eb9a29bf00c6 100644 --- a/pandas/core/reshape/pivot.py +++ b/pandas/core/reshape/pivot.py @@ -19,7 +19,7 @@ from pandas.core.dtypes.common import is_integer_dtype, is_list_like, is_scalar from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries -import pandas.core.common as com +from pandas.core import common as com from pandas.core.frame import _shared_docs from pandas.core.groupby import Grouper from pandas.core.indexes.api import Index, MultiIndex, get_objs_combined_axis diff --git a/pandas/core/reshape/reshape.py b/pandas/core/reshape/reshape.py index 391313fbb5283..b067dfea4287c 100644 --- a/pandas/core/reshape/reshape.py +++ b/pandas/core/reshape/reshape.py @@ -3,8 +3,7 @@ import numpy as np -import pandas._libs.algos as libalgos -import pandas._libs.reshape as libreshape +from pandas._libs import algos as libalgos, reshape as libreshape from pandas._libs.sparse import IntIndex from pandas.util._decorators import cache_readonly @@ -21,7 +20,7 @@ ) from pandas.core.dtypes.missing import notna -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos from pandas.core.arrays import SparseArray from pandas.core.arrays.categorical import factorize_from_iterable from pandas.core.frame import DataFrame diff --git a/pandas/core/reshape/tile.py b/pandas/core/reshape/tile.py index f7723bee532ff..7e73153671ba8 100644 --- a/pandas/core/reshape/tile.py +++ b/pandas/core/reshape/tile.py @@ -25,8 +25,7 @@ from pandas.core.dtypes.missing import isna from pandas import Categorical, Index, IntervalIndex, to_datetime, to_timedelta -import pandas.core.algorithms as algos -import pandas.core.nanops as nanops +from pandas.core import algorithms as algos, nanops as nanops def cut( diff --git a/pandas/core/series.py b/pandas/core/series.py index 6c1d21e4526cf..9afb9d5ad0333 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -65,12 +65,11 @@ ) import pandas as pd -from pandas.core import algorithms, base, generic, nanops, ops +from pandas.core import algorithms, base, common as com, generic, nanops, ops from pandas.core.accessor import CachedAccessor from pandas.core.arrays import ExtensionArray from pandas.core.arrays.categorical import CategoricalAccessor from pandas.core.arrays.sparse import SparseAccessor -import pandas.core.common as com from pandas.core.construction import ( create_series_with_explicit_dtype, extract_array, @@ -79,9 +78,9 @@ ) from pandas.core.generic import NDFrame from pandas.core.indexers import deprecate_ndim_indexing, unpack_1tuple +from pandas.core.indexes import base as ibase from pandas.core.indexes.accessors import CombinedDatetimelikeProperties from pandas.core.indexes.api import Float64Index, Index, MultiIndex, ensure_index -import pandas.core.indexes.base as ibase from pandas.core.indexes.datetimes import DatetimeIndex from pandas.core.indexes.period import PeriodIndex from pandas.core.indexes.timedeltas import TimedeltaIndex @@ -91,7 +90,7 @@ from pandas.core.strings import StringMethods from pandas.core.tools.datetimes import to_datetime -import pandas.io.formats.format as fmt +from pandas.io.formats import format as fmt import pandas.plotting if TYPE_CHECKING: diff --git a/pandas/core/sorting.py b/pandas/core/sorting.py index da9cbe1023599..9212bcaaae984 100644 --- a/pandas/core/sorting.py +++ b/pandas/core/sorting.py @@ -15,7 +15,7 @@ from pandas.core.dtypes.generic import ABCMultiIndex from pandas.core.dtypes.missing import isna -import pandas.core.algorithms as algorithms +from pandas.core import algorithms as algorithms from pandas.core.construction import extract_array _INT64_MAX = np.iinfo(np.int64).max diff --git a/pandas/core/strings.py b/pandas/core/strings.py index a1db7742916de..c435b0caa47d7 100644 --- a/pandas/core/strings.py +++ b/pandas/core/strings.py @@ -7,9 +7,7 @@ import numpy as np -import pandas._libs.lib as lib -import pandas._libs.missing as libmissing -import pandas._libs.ops as libops +from pandas._libs import lib as lib, missing as libmissing, ops as libops from pandas._typing import ArrayLike, Dtype, Scalar from pandas.util._decorators import Appender @@ -155,7 +153,7 @@ def _map_stringarray( an ndarray. """ - from pandas.arrays import IntegerArray, StringArray, BooleanArray + from pandas.arrays import BooleanArray, IntegerArray, StringArray mask = isna(arr) @@ -2186,7 +2184,7 @@ def _wrap_result( returns_string=True, ): - from pandas import Index, Series, MultiIndex + from pandas import Index, MultiIndex, Series # for category, we do the stuff on the categories, so blow it up # to the full series again @@ -2292,7 +2290,7 @@ def _get_series_list(self, others): list of Series Others transformed into list of Series. """ - from pandas import Series, DataFrame + from pandas import DataFrame, Series # self._orig is either Series or Index idx = self._orig if isinstance(self._orig, ABCIndexClass) else self._orig.index diff --git a/pandas/core/tools/datetimes.py b/pandas/core/tools/datetimes.py index 0adab143f6052..7aac2f793f61a 100644 --- a/pandas/core/tools/datetimes.py +++ b/pandas/core/tools/datetimes.py @@ -53,9 +53,10 @@ from pandas.core.indexes.datetimes import DatetimeIndex if TYPE_CHECKING: - from pandas import Series # noqa:F401 from pandas._libs.tslibs.nattype import NaTType # noqa:F401 + from pandas import Series # noqa:F401 + # --------------------------------------------------------------------- # types used in annotations @@ -876,7 +877,7 @@ def _assemble_from_unit_mappings(arg, errors, tz): ------- Series """ - from pandas import to_timedelta, to_numeric, DataFrame + from pandas import DataFrame, to_numeric, to_timedelta arg = DataFrame(arg) if not arg.columns.is_unique: diff --git a/pandas/core/util/hashing.py b/pandas/core/util/hashing.py index 1b56b6d5a46fa..e3e6f18400ec2 100644 --- a/pandas/core/util/hashing.py +++ b/pandas/core/util/hashing.py @@ -6,7 +6,7 @@ import numpy as np -import pandas._libs.hashing as hashing +from pandas._libs import hashing as hashing from pandas.core.dtypes.common import ( is_categorical_dtype, @@ -275,7 +275,7 @@ def hash_array( # then hash and rename categories. We allow skipping the categorization # when the values are known/likely to be unique. if categorize: - from pandas import factorize, Categorical, Index + from pandas import Categorical, Index, factorize codes, categories = factorize(vals, sort=False) cat = Categorical(codes, Index(categories), ordered=False, fastpath=True) diff --git a/pandas/core/window/ewm.py b/pandas/core/window/ewm.py index 7a2d8e84bec76..48b7f92e9511a 100644 --- a/pandas/core/window/ewm.py +++ b/pandas/core/window/ewm.py @@ -6,7 +6,7 @@ import numpy as np from pandas._libs.tslibs import Timedelta -import pandas._libs.window.aggregations as window_aggregations +from pandas._libs.window import aggregations as window_aggregations from pandas._typing import FrameOrSeries, TimedeltaConvertibleTypes from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc @@ -14,8 +14,8 @@ from pandas.core.dtypes.common import is_datetime64_ns_dtype from pandas.core.dtypes.generic import ABCDataFrame +from pandas.core import common as common from pandas.core.base import DataError -import pandas.core.common as common from pandas.core.window.common import _doc_template, _shared_docs, zsqrt from pandas.core.window.rolling import _flex_binary_moment, _Rolling diff --git a/pandas/core/window/rolling.py b/pandas/core/window/rolling.py index 8cb53ebd92214..d9047a7e1a5fb 100644 --- a/pandas/core/window/rolling.py +++ b/pandas/core/window/rolling.py @@ -11,7 +11,7 @@ import numpy as np from pandas._libs.tslibs import BaseOffset, to_offset -import pandas._libs.window.aggregations as window_aggregations +from pandas._libs.window import aggregations as window_aggregations from pandas._typing import Axis, FrameOrSeries, Scalar from pandas.compat._optional import import_optional_dependency from pandas.compat.numpy import function as nv @@ -35,8 +35,8 @@ ABCTimedeltaIndex, ) +from pandas.core import common as com from pandas.core.base import DataError, PandasObject, SelectionMixin, ShallowMixin -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.indexes.api import Index, MultiIndex, ensure_index from pandas.core.util.numba_ import NUMBA_FUNC_CACHE @@ -1044,7 +1044,7 @@ def validate(self): import_optional_dependency( "scipy", extra="Scipy is required to generate window weight." ) - import scipy.signal as sig + from scipy import signal as sig if not isinstance(self.win_type, str): raise ValueError(f"Invalid win_type {self.win_type}") @@ -1119,7 +1119,7 @@ def _get_window( if isinstance(window, (list, tuple, np.ndarray)): return com.asarray_tuplesafe(window).astype(float) elif is_integer(window): - import scipy.signal as sig + from scipy import signal as sig # GH #15662. `False` makes symmetric window, rather than periodic. return sig.get_window(win_type, window, False).astype(float) diff --git a/pandas/io/clipboard/__init__.py b/pandas/io/clipboard/__init__.py index 40bff5a75709b..3454c5a38374b 100644 --- a/pandas/io/clipboard/__init__.py +++ b/pandas/io/clipboard/__init__.py @@ -41,7 +41,6 @@ """ __version__ = "1.7.0" - import contextlib import ctypes from ctypes import c_size_t, c_wchar, c_wchar_p, get_errno, sizeof @@ -311,17 +310,17 @@ def init_windows_clipboard(): global HGLOBAL, LPVOID, DWORD, LPCSTR, INT global HWND, HINSTANCE, HMENU, BOOL, UINT, HANDLE from ctypes.wintypes import ( - HGLOBAL, - LPVOID, + BOOL, DWORD, - LPCSTR, - INT, - HWND, + HANDLE, + HGLOBAL, HINSTANCE, HMENU, - BOOL, + HWND, + INT, + LPCSTR, + LPVOID, UINT, - HANDLE, ) windll = ctypes.windll @@ -528,8 +527,8 @@ def determine_clipboard(): # Setup for the MAC OS X platform: if os.name == "mac" or platform.system() == "Darwin": try: - import Foundation # check if pyobjc is installed import AppKit + import Foundation # check if pyobjc is installed except ImportError: return init_osx_pbcopy_clipboard() else: diff --git a/pandas/io/excel/_base.py b/pandas/io/excel/_base.py index 4fa4f158e9c3c..65056ddfb6ecb 100644 --- a/pandas/io/excel/_base.py +++ b/pandas/io/excel/_base.py @@ -832,8 +832,8 @@ class ExcelFile: from pandas.io.excel._odfreader import _ODFReader from pandas.io.excel._openpyxl import _OpenpyxlReader - from pandas.io.excel._xlrd import _XlrdReader from pandas.io.excel._pyxlsb import _PyxlsbReader + from pandas.io.excel._xlrd import _XlrdReader _engines = { "xlrd": _XlrdReader, diff --git a/pandas/io/excel/_odfreader.py b/pandas/io/excel/_odfreader.py index 85ec9afaaec25..44abaf5d3b3c9 100644 --- a/pandas/io/excel/_odfreader.py +++ b/pandas/io/excel/_odfreader.py @@ -191,9 +191,9 @@ def _get_cell_string_value(self, cell) -> str: Find and decode OpenDocument text:s tags that represent a run length encoded sequence of space characters. """ - from odf.element import Text, Element - from odf.text import S, P + from odf.element import Element, Text from odf.namespaces import TEXTNS + from odf.text import P, S text_p = P().qname text_s = S().qname diff --git a/pandas/io/excel/_odswriter.py b/pandas/io/excel/_odswriter.py index 0131240f99cf6..0c397e2cae724 100644 --- a/pandas/io/excel/_odswriter.py +++ b/pandas/io/excel/_odswriter.py @@ -2,7 +2,7 @@ import datetime from typing import Any, DefaultDict, Dict, List, Optional, Tuple, Union -import pandas._libs.json as json +from pandas._libs import json as json from pandas.io.excel._base import ExcelWriter from pandas.io.excel._util import _validate_freeze_panes diff --git a/pandas/io/excel/_openpyxl.py b/pandas/io/excel/_openpyxl.py index 0696d82e51f34..03a30cbd62f9a 100644 --- a/pandas/io/excel/_openpyxl.py +++ b/pandas/io/excel/_openpyxl.py @@ -225,7 +225,7 @@ def _convert_to_fill(cls, fill_dict): ------- fill : openpyxl.styles.Fill """ - from openpyxl.styles import PatternFill, GradientFill + from openpyxl.styles import GradientFill, PatternFill _pattern_fill_key_map = { "patternType": "fill_type", diff --git a/pandas/io/excel/_xlrd.py b/pandas/io/excel/_xlrd.py index 8f7d3b1368fc7..af82c15fd6b66 100644 --- a/pandas/io/excel/_xlrd.py +++ b/pandas/io/excel/_xlrd.py @@ -48,11 +48,11 @@ def get_sheet_by_index(self, index): def get_sheet_data(self, sheet, convert_float): from xlrd import ( - xldate, + XL_CELL_BOOLEAN, XL_CELL_DATE, XL_CELL_ERROR, - XL_CELL_BOOLEAN, XL_CELL_NUMBER, + xldate, ) epoch1904 = self.book.datemode diff --git a/pandas/io/excel/_xlsxwriter.py b/pandas/io/excel/_xlsxwriter.py index 85a1bb031f457..82593fcd43562 100644 --- a/pandas/io/excel/_xlsxwriter.py +++ b/pandas/io/excel/_xlsxwriter.py @@ -1,4 +1,4 @@ -import pandas._libs.json as json +from pandas._libs import json as json from pandas.io.excel._base import ExcelWriter from pandas.io.excel._util import _validate_freeze_panes diff --git a/pandas/io/excel/_xlwt.py b/pandas/io/excel/_xlwt.py index 78efe77e9fe2d..302155544956a 100644 --- a/pandas/io/excel/_xlwt.py +++ b/pandas/io/excel/_xlwt.py @@ -1,4 +1,4 @@ -import pandas._libs.json as json +from pandas._libs import json as json from pandas.io.excel._base import ExcelWriter from pandas.io.excel._util import _validate_freeze_panes diff --git a/pandas/io/formats/excel.py b/pandas/io/formats/excel.py index bf4586a4b5b96..914bf0dd23672 100644 --- a/pandas/io/formats/excel.py +++ b/pandas/io/formats/excel.py @@ -1,7 +1,6 @@ """ Utilities for conversion to writer-agnostic Excel representation. """ - from functools import reduce import itertools import re @@ -17,7 +16,7 @@ from pandas.core.dtypes.generic import ABCIndex from pandas import DataFrame, Index, MultiIndex, PeriodIndex -import pandas.core.common as com +from pandas.core import common as com from pandas.io.common import stringify_path from pandas.io.formats.css import CSSResolver, CSSWarning diff --git a/pandas/io/formats/format.py b/pandas/io/formats/format.py index 22cdd8e235e0b..efe74a7afd97d 100644 --- a/pandas/io/formats/format.py +++ b/pandas/io/formats/format.py @@ -2,7 +2,6 @@ Internal module for formatting output data in csv, html, and latex files. This module also applies to display formatting. """ - from contextlib import contextmanager from csv import QUOTE_NONE, QUOTE_NONNUMERIC from datetime import tzinfo @@ -59,10 +58,10 @@ ) from pandas.core.dtypes.missing import isna, notna +from pandas.core import common as com from pandas.core.arrays.datetimes import DatetimeArray from pandas.core.arrays.timedeltas import TimedeltaArray from pandas.core.base import PandasObject -import pandas.core.common as com from pandas.core.construction import extract_array from pandas.core.indexes.api import Index, MultiIndex, PeriodIndex, ensure_index from pandas.core.indexes.datetimes import DatetimeIndex @@ -72,7 +71,7 @@ from pandas.io.formats.printing import adjoin, justify, pprint_thing if TYPE_CHECKING: - from pandas import Series, DataFrame, Categorical + from pandas import Categorical, DataFrame, Series FormattersType = Union[ List[Callable], Tuple[Callable, ...], Mapping[Union[str, int], Callable] diff --git a/pandas/io/formats/style.py b/pandas/io/formats/style.py index 6250e99252928..f724056b2ca7d 100644 --- a/pandas/io/formats/style.py +++ b/pandas/io/formats/style.py @@ -1,7 +1,6 @@ """ Module for applying conditional formatting to DataFrames and Series. """ - from collections import defaultdict from contextlib import contextmanager import copy @@ -33,7 +32,7 @@ import pandas as pd from pandas.api.types import is_dict_like, is_list_like -import pandas.core.common as com +from pandas.core import common as com from pandas.core.frame import DataFrame from pandas.core.generic import NDFrame from pandas.core.indexing import _maybe_numeric_slice, _non_reducing_slice @@ -42,8 +41,7 @@ try: - import matplotlib.pyplot as plt - from matplotlib import colors + from matplotlib import colors, pyplot as plt has_mpl = True except ImportError: diff --git a/pandas/io/html.py b/pandas/io/html.py index c4ffe332e3020..71faf95bfe30b 100644 --- a/pandas/io/html.py +++ b/pandas/io/html.py @@ -3,7 +3,6 @@ HTML IO. """ - from collections import abc import numbers import os @@ -704,8 +703,8 @@ def _build_doc(self): -------- pandas.io.html._HtmlFrameParser._build_doc """ - from lxml.html import parse, fromstring, HTMLParser from lxml.etree import XMLSyntaxError + from lxml.html import HTMLParser, fromstring, parse parser = HTMLParser(recover=True, encoding=self.encoding) diff --git a/pandas/io/json/_json.py b/pandas/io/json/_json.py index ff37c36962aec..28141f34dbd8d 100644 --- a/pandas/io/json/_json.py +++ b/pandas/io/json/_json.py @@ -7,7 +7,7 @@ import numpy as np -import pandas._libs.json as json +from pandas._libs import json as json from pandas._libs.tslibs import iNaT from pandas._typing import JSONSerializable from pandas.errors import AbstractMethodError diff --git a/pandas/io/json/_table_schema.py b/pandas/io/json/_table_schema.py index 84146a5d732e1..e2f64ada824be 100644 --- a/pandas/io/json/_table_schema.py +++ b/pandas/io/json/_table_schema.py @@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, Any, Dict, Optional, cast import warnings -import pandas._libs.json as json +from pandas._libs import json as json from pandas._typing import DtypeObj, FrameOrSeries, JSONSerializable from pandas.core.dtypes.common import ( @@ -23,7 +23,7 @@ from pandas.core.dtypes.dtypes import CategoricalDtype from pandas import DataFrame -import pandas.core.common as com +from pandas.core import common as com if TYPE_CHECKING: from pandas.core.indexes.multi import MultiIndex # noqa: F401 diff --git a/pandas/io/parsers.py b/pandas/io/parsers.py index c427d3a198b10..4da50c468adef 100644 --- a/pandas/io/parsers.py +++ b/pandas/io/parsers.py @@ -1,7 +1,6 @@ """ Module contains tools for processing files into DataFrames or other objects """ - from collections import abc, defaultdict import csv import datetime @@ -15,9 +14,7 @@ import numpy as np -import pandas._libs.lib as lib -import pandas._libs.ops as libops -import pandas._libs.parsers as parsers +from pandas._libs import lib as lib, ops as libops, parsers as parsers from pandas._libs.parsers import STR_NA_VALUES from pandas._libs.tslibs import parsing from pandas._typing import FilePathOrBuffer, Union diff --git a/pandas/io/pytables.py b/pandas/io/pytables.py index b67a1c5781d91..602689636007e 100644 --- a/pandas/io/pytables.py +++ b/pandas/io/pytables.py @@ -48,8 +48,8 @@ concat, isna, ) +from pandas.core import common as com from pandas.core.arrays import Categorical, DatetimeArray, PeriodArray -import pandas.core.common as com from pandas.core.computation.pytables import PyTablesExpr, maybe_expression from pandas.core.indexes.api import ensure_index @@ -57,7 +57,7 @@ from pandas.io.formats.printing import adjoin, pprint_thing if TYPE_CHECKING: - from tables import File, Node, Col # noqa:F401 + from tables import Col, File, Node # noqa:F401 # versioning attribute diff --git a/pandas/io/sas/sas.pyx b/pandas/io/sas/sas.pyx index 0038e39e2ffcc..2c349611725fb 100644 --- a/pandas/io/sas/sas.pyx +++ b/pandas/io/sas/sas.pyx @@ -1,9 +1,9 @@ # cython: profile=False # cython: boundscheck=False, initializedcheck=False from cython import Py_ssize_t - import numpy as np -import pandas.io.sas.sas_constants as const + +from pandas.io.sas import sas_constants as const ctypedef signed long long int64_t ctypedef unsigned char uint8_t diff --git a/pandas/io/sas/sas7bdat.py b/pandas/io/sas/sas7bdat.py index 3d9be7c15726b..8ae1b31e692d8 100644 --- a/pandas/io/sas/sas7bdat.py +++ b/pandas/io/sas/sas7bdat.py @@ -24,8 +24,8 @@ import pandas as pd from pandas.io.common import get_filepath_or_buffer +from pandas.io.sas import sas_constants as const from pandas.io.sas._sas import Parser -import pandas.io.sas.sas_constants as const from pandas.io.sas.sasreader import ReaderBase diff --git a/pandas/io/sql.py b/pandas/io/sql.py index 9177696ca13d6..ada8e8c6cbf6e 100644 --- a/pandas/io/sql.py +++ b/pandas/io/sql.py @@ -2,7 +2,6 @@ Collection of query wrappers / abstractions to both facilitate data retrieval and to reduce dependency on DB-specific API. """ - from contextlib import contextmanager from datetime import date, datetime, time from functools import partial @@ -12,7 +11,7 @@ import numpy as np -import pandas._libs.lib as lib +from pandas._libs import lib as lib from pandas.core.dtypes.common import is_datetime64tz_dtype, is_dict_like, is_list_like from pandas.core.dtypes.dtypes import DatetimeTZDtype @@ -937,7 +936,7 @@ def _get_column_names_and_types(self, dtype_mapper): return column_names_and_types def _create_table_setup(self): - from sqlalchemy import Table, Column, PrimaryKeyConstraint + from sqlalchemy import Column, PrimaryKeyConstraint, Table column_names_and_types = self._get_column_names_and_types(self._sqlalchemy_type) @@ -1026,15 +1025,15 @@ def _sqlalchemy_type(self, col): col_type = lib.infer_dtype(col, skipna=True) from sqlalchemy.types import ( + TIMESTAMP, BigInteger, - Integer, - Float, - Text, Boolean, - DateTime, Date, + DateTime, + Float, + Integer, + Text, Time, - TIMESTAMP, ) if col_type == "datetime64" or col_type == "datetime": @@ -1079,7 +1078,7 @@ def _sqlalchemy_type(self, col): return Text def _get_dtype(self, sqltype): - from sqlalchemy.types import Integer, Float, Boolean, DateTime, Date, TIMESTAMP + from sqlalchemy.types import TIMESTAMP, Boolean, Date, DateTime, Float, Integer if isinstance(sqltype, Float): return float @@ -1374,7 +1373,7 @@ def to_sql( dtype = {col_name: dtype for col_name in frame} if dtype is not None: - from sqlalchemy.types import to_instance, TypeEngine + from sqlalchemy.types import TypeEngine, to_instance for col, my_type in dtype.items(): if not isinstance(to_instance(my_type), TypeEngine): diff --git a/pandas/plotting/_core.py b/pandas/plotting/_core.py index 45a3818492b44..5e3ca708284ec 100644 --- a/pandas/plotting/_core.py +++ b/pandas/plotting/_core.py @@ -1775,7 +1775,7 @@ def _get_plot_backend(backend=None): # Because matplotlib is an optional dependency and first-party backend, # we need to attempt an import here to raise an ImportError if needed. try: - import pandas.plotting._matplotlib as module + from pandas.plotting import _matplotlib as module except ImportError: raise ImportError( "matplotlib is required for plotting when the " diff --git a/pandas/plotting/_matplotlib/__init__.py b/pandas/plotting/_matplotlib/__init__.py index 27b1d55fe1bd6..fd9da13d0c102 100644 --- a/pandas/plotting/_matplotlib/__init__.py +++ b/pandas/plotting/_matplotlib/__init__.py @@ -49,7 +49,7 @@ def plot(data, kind, **kwargs): # Importing pyplot at the top of the file (before the converters are # registered) causes problems in matplotlib 2 (converters seem to not # work) - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if kwargs.pop("reuse_plot", False): ax = kwargs.get("ax") diff --git a/pandas/plotting/_matplotlib/boxplot.py b/pandas/plotting/_matplotlib/boxplot.py index 4b79bef41d025..131349e32a2e5 100644 --- a/pandas/plotting/_matplotlib/boxplot.py +++ b/pandas/plotting/_matplotlib/boxplot.py @@ -241,7 +241,7 @@ def boxplot( **kwds, ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt # validate return_type: if return_type not in BoxPlot._valid_return_types: @@ -370,7 +370,7 @@ def boxplot_frame( return_type=None, **kwds, ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt ax = boxplot( self, diff --git a/pandas/plotting/_matplotlib/converter.py b/pandas/plotting/_matplotlib/converter.py index 05377e0c240b9..7cca1989462c7 100644 --- a/pandas/plotting/_matplotlib/converter.py +++ b/pandas/plotting/_matplotlib/converter.py @@ -4,10 +4,9 @@ import functools from dateutil.relativedelta import relativedelta -import matplotlib.dates as dates +from matplotlib import dates as dates, units as units from matplotlib.ticker import AutoLocator, Formatter, Locator from matplotlib.transforms import nonsingular -import matplotlib.units as units import numpy as np from pandas._libs import lib @@ -25,10 +24,10 @@ ) from pandas import Index, Series, get_option -import pandas.core.common as com +from pandas.core import common as com from pandas.core.indexes.datetimes import date_range from pandas.core.indexes.period import Period, PeriodIndex, period_range -import pandas.core.tools.datetimes as tools +from pandas.core.tools import datetimes as tools # constants HOURS_PER_DAY = 24.0 diff --git a/pandas/plotting/_matplotlib/core.py b/pandas/plotting/_matplotlib/core.py index e510f7140519a..535a9ebeab76d 100644 --- a/pandas/plotting/_matplotlib/core.py +++ b/pandas/plotting/_matplotlib/core.py @@ -27,7 +27,7 @@ ) from pandas.core.dtypes.missing import isna, notna -import pandas.core.common as com +from pandas.core import common as com from pandas.io.formats.printing import pprint_thing from pandas.plotting._matplotlib.compat import _mpl_ge_3_0_0 @@ -111,7 +111,7 @@ def __init__( **kwds, ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt self.data = data self.by = by @@ -607,7 +607,7 @@ def _get_ax_legend_handle(self, ax): @cache_readonly def plt(self): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt return plt @@ -708,7 +708,7 @@ def _get_ax(self, i): @classmethod def get_default_ax(cls, ax): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if ax is None and len(plt.get_fignums()) > 0: with plt.rc_context(): @@ -1135,8 +1135,8 @@ def _plot(cls, ax, x, y, style=None, column_num=None, stacking_id=None, **kwds): @classmethod def _ts_plot(cls, ax, x, data, style=None, **kwds): from pandas.plotting._matplotlib.timeseries import ( - _maybe_resample, _decorate_axes, + _maybe_resample, format_dateaxis, ) diff --git a/pandas/plotting/_matplotlib/hist.py b/pandas/plotting/_matplotlib/hist.py index ee41479b3c7c9..aaee2b437021b 100644 --- a/pandas/plotting/_matplotlib/hist.py +++ b/pandas/plotting/_matplotlib/hist.py @@ -305,7 +305,7 @@ def hist_series( legend: bool = False, **kwds, ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if legend and "label" in kwds: raise ValueError("Cannot use both legend and label") diff --git a/pandas/plotting/_matplotlib/misc.py b/pandas/plotting/_matplotlib/misc.py index bb6530b0f6412..392171a0dabb5 100644 --- a/pandas/plotting/_matplotlib/misc.py +++ b/pandas/plotting/_matplotlib/misc.py @@ -1,7 +1,6 @@ import random -import matplotlib.lines as mlines -import matplotlib.patches as patches +from matplotlib import lines as mlines, patches as patches import numpy as np from pandas.core.dtypes.missing import notna @@ -115,7 +114,7 @@ def _get_marker_compat(marker): def radviz(frame, class_column, ax=None, color=None, colormap=None, **kwds): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt def normalize(series): a = min(series) @@ -199,7 +198,7 @@ def normalize(series): def andrews_curves( frame, class_column, ax=None, samples=200, color=None, colormap=None, **kwds ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt def function(amplitudes): def f(t): @@ -258,7 +257,7 @@ def f(t): def bootstrap_plot(series, fig=None, size=50, samples=500, **kwds): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt # TODO: is the failure mentioned below still relevant? # random.sample(ndarray, int) fails on python 3.3, sigh @@ -319,7 +318,7 @@ def parallel_coordinates( sort_labels=False, **kwds, ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if axvlines_kwds is None: axvlines_kwds = {"linewidth": 1, "color": "black"} @@ -387,7 +386,7 @@ def parallel_coordinates( def lag_plot(series, lag=1, ax=None, **kwds): # workaround because `c='b'` is hardcoded in matplotlib's scatter method - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt kwds.setdefault("c", plt.rcParams["patch.facecolor"]) @@ -403,7 +402,7 @@ def lag_plot(series, lag=1, ax=None, **kwds): def autocorrelation_plot(series, ax=None, **kwds): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt n = len(series) data = np.asarray(series) diff --git a/pandas/plotting/_matplotlib/style.py b/pandas/plotting/_matplotlib/style.py index 7990bff4f517c..b875557623065 100644 --- a/pandas/plotting/_matplotlib/style.py +++ b/pandas/plotting/_matplotlib/style.py @@ -1,19 +1,19 @@ # being a bit too dynamic import warnings -import matplotlib.cm as cm +from matplotlib import cm as cm import matplotlib.colors import numpy as np from pandas.core.dtypes.common import is_list_like -import pandas.core.common as com +from pandas.core import common as com def _get_standard_colors( num_colors=None, colormap=None, color_type="default", color=None ): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if color is None and colormap is not None: if isinstance(colormap, str): diff --git a/pandas/plotting/_matplotlib/timeseries.py b/pandas/plotting/_matplotlib/timeseries.py index 8f3571cf13cbc..e390d2b93f25f 100644 --- a/pandas/plotting/_matplotlib/timeseries.py +++ b/pandas/plotting/_matplotlib/timeseries.py @@ -1,5 +1,4 @@ # TODO: Use the fact that axis can have units to simplify the process - import functools from typing import TYPE_CHECKING, Optional @@ -24,7 +23,7 @@ from pandas.tseries.frequencies import get_period_alias, is_subperiod, is_superperiod if TYPE_CHECKING: - from pandas import Series, Index # noqa:F401 + from pandas import Index, Series # noqa:F401 # --------------------------------------------------------------------- diff --git a/pandas/plotting/_matplotlib/tools.py b/pandas/plotting/_matplotlib/tools.py index caf2f27de9276..5b9d15c31d8cc 100644 --- a/pandas/plotting/_matplotlib/tools.py +++ b/pandas/plotting/_matplotlib/tools.py @@ -2,8 +2,8 @@ from math import ceil import warnings +from matplotlib import ticker as ticker import matplotlib.table -import matplotlib.ticker as ticker import numpy as np from pandas.core.dtypes.common import is_list_like @@ -176,7 +176,7 @@ def _subplots( # Four polar axes plt.subplots(2, 2, subplot_kw=dict(polar=True)) """ - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt if subplot_kw is None: subplot_kw = {} @@ -343,7 +343,7 @@ def _flatten(axes): def _set_ticks_props(axes, xlabelsize=None, xrot=None, ylabelsize=None, yrot=None): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt for ax in _flatten(axes): if xlabelsize is not None: diff --git a/pandas/tests/api/test_api.py b/pandas/tests/api/test_api.py index ecd20796b6f21..7ac01e5b10a88 100644 --- a/pandas/tests/api/test_api.py +++ b/pandas/tests/api/test_api.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import api, compat -import pandas._testing as tm +from pandas import _testing as tm, api, compat class Base: @@ -267,9 +266,10 @@ def test_sparsearray(): def test_np(): - import numpy as np import warnings + import numpy as np + with warnings.catch_warnings(): warnings.simplefilter("ignore", FutureWarning) assert (pd.np.arange(0, 10) == np.arange(0, 10)).all() diff --git a/pandas/tests/api/test_types.py b/pandas/tests/api/test_types.py index 31423c03dee34..1ecbb9dfd9b1d 100644 --- a/pandas/tests/api/test_types.py +++ b/pandas/tests/api/test_types.py @@ -1,4 +1,4 @@ -import pandas._testing as tm +from pandas import _testing as tm from pandas.api import types from .test_api import Base diff --git a/pandas/tests/arithmetic/common.py b/pandas/tests/arithmetic/common.py index 755fbd0d9036c..5e45829c2d609 100644 --- a/pandas/tests/arithmetic/common.py +++ b/pandas/tests/arithmetic/common.py @@ -4,8 +4,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm def assert_invalid_addsub_type(left, right, msg=None): diff --git a/pandas/tests/arithmetic/conftest.py b/pandas/tests/arithmetic/conftest.py index 8b9e5cd371a90..718ffd680d386 100644 --- a/pandas/tests/arithmetic/conftest.py +++ b/pandas/tests/arithmetic/conftest.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm # ------------------------------------------------------------------ # Helper Functions diff --git a/pandas/tests/arithmetic/test_array_ops.py b/pandas/tests/arithmetic/test_array_ops.py index 53cb10ba9fc5e..99b2604c78ecf 100644 --- a/pandas/tests/arithmetic/test_array_ops.py +++ b/pandas/tests/arithmetic/test_array_ops.py @@ -3,7 +3,7 @@ import numpy as np import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.ops.array_ops import comparison_op, na_logical_op diff --git a/pandas/tests/arithmetic/test_datetime64.py b/pandas/tests/arithmetic/test_datetime64.py index 5dfaea7c77420..c1454e255b1b9 100644 --- a/pandas/tests/arithmetic/test_datetime64.py +++ b/pandas/tests/arithmetic/test_datetime64.py @@ -24,9 +24,9 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm from pandas.core.arrays import DatetimeArray, TimedeltaArray from pandas.core.ops import roperator from pandas.tests.arithmetic.common import ( diff --git a/pandas/tests/arithmetic/test_interval.py b/pandas/tests/arithmetic/test_interval.py index 50b5fe8e6f6b9..5b416beaf40e3 100644 --- a/pandas/tests/arithmetic/test_interval.py +++ b/pandas/tests/arithmetic/test_interval.py @@ -15,11 +15,11 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, period_range, timedelta_range, ) -import pandas._testing as tm from pandas.core.arrays import IntervalArray diff --git a/pandas/tests/arithmetic/test_numeric.py b/pandas/tests/arithmetic/test_numeric.py index 2155846b271fc..8c35774ca4d46 100644 --- a/pandas/tests/arithmetic/test_numeric.py +++ b/pandas/tests/arithmetic/test_numeric.py @@ -11,8 +11,7 @@ import pytest import pandas as pd -from pandas import Index, Series, Timedelta, TimedeltaIndex -import pandas._testing as tm +from pandas import Index, Series, Timedelta, TimedeltaIndex, _testing as tm from pandas.core import ops diff --git a/pandas/tests/arithmetic/test_object.py b/pandas/tests/arithmetic/test_object.py index c0cb522b516ab..b621511a57f74 100644 --- a/pandas/tests/arithmetic/test_object.py +++ b/pandas/tests/arithmetic/test_object.py @@ -9,8 +9,7 @@ import pytest import pandas as pd -from pandas import Series, Timestamp -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm from pandas.core import ops # ------------------------------------------------------------------ diff --git a/pandas/tests/arithmetic/test_period.py b/pandas/tests/arithmetic/test_period.py index 930435074efc1..7602ba7abfcea 100644 --- a/pandas/tests/arithmetic/test_period.py +++ b/pandas/tests/arithmetic/test_period.py @@ -10,8 +10,7 @@ from pandas.errors import PerformanceWarning import pandas as pd -from pandas import PeriodIndex, Series, TimedeltaIndex, period_range -import pandas._testing as tm +from pandas import PeriodIndex, Series, TimedeltaIndex, _testing as tm, period_range from pandas.core import ops from pandas.core.arrays import TimedeltaArray diff --git a/pandas/tests/arithmetic/test_timedelta64.py b/pandas/tests/arithmetic/test_timedelta64.py index f94408d657ae5..c6b1f65c318c2 100644 --- a/pandas/tests/arithmetic/test_timedelta64.py +++ b/pandas/tests/arithmetic/test_timedelta64.py @@ -16,9 +16,9 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, timedelta_range, ) -import pandas._testing as tm from pandas.tests.arithmetic.common import ( assert_invalid_addsub_type, assert_invalid_comparison, diff --git a/pandas/tests/arrays/boolean/test_arithmetic.py b/pandas/tests/arrays/boolean/test_arithmetic.py index 1a4ab9799e8e5..00e43be08fe0a 100644 --- a/pandas/tests/arrays/boolean/test_arithmetic.py +++ b/pandas/tests/arrays/boolean/test_arithmetic.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture diff --git a/pandas/tests/arrays/boolean/test_astype.py b/pandas/tests/arrays/boolean/test_astype.py index 57cec70262526..3d74cc2c766ea 100644 --- a/pandas/tests/arrays/boolean/test_astype.py +++ b/pandas/tests/arrays/boolean/test_astype.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_astype(): diff --git a/pandas/tests/arrays/boolean/test_comparison.py b/pandas/tests/arrays/boolean/test_comparison.py index 726b78fbd43bd..9df32972f4ed8 100644 --- a/pandas/tests/arrays/boolean/test_comparison.py +++ b/pandas/tests/arrays/boolean/test_comparison.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import BooleanArray from pandas.tests.extension.base import BaseOpsUtil diff --git a/pandas/tests/arrays/boolean/test_construction.py b/pandas/tests/arrays/boolean/test_construction.py index 2f5c61304d415..3fd1c985eeead 100644 --- a/pandas/tests/arrays/boolean/test_construction.py +++ b/pandas/tests/arrays/boolean/test_construction.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import BooleanArray from pandas.core.arrays.boolean import coerce_to_array diff --git a/pandas/tests/arrays/boolean/test_function.py b/pandas/tests/arrays/boolean/test_function.py index 49a832f8dda20..cc3910518edf4 100644 --- a/pandas/tests/arrays/boolean/test_function.py +++ b/pandas/tests/arrays/boolean/test_function.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture diff --git a/pandas/tests/arrays/boolean/test_indexing.py b/pandas/tests/arrays/boolean/test_indexing.py index 6a7daea16963c..cf9f06a948868 100644 --- a/pandas/tests/arrays/boolean/test_indexing.py +++ b/pandas/tests/arrays/boolean/test_indexing.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize("na", [None, np.nan, pd.NA]) diff --git a/pandas/tests/arrays/boolean/test_logical.py b/pandas/tests/arrays/boolean/test_logical.py index e79262e1b7934..a53e20329585b 100644 --- a/pandas/tests/arrays/boolean/test_logical.py +++ b/pandas/tests/arrays/boolean/test_logical.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import BooleanArray from pandas.tests.extension.base import BaseOpsUtil diff --git a/pandas/tests/arrays/boolean/test_ops.py b/pandas/tests/arrays/boolean/test_ops.py index 52f602258a049..ec8cc5e1002ed 100644 --- a/pandas/tests/arrays/boolean/test_ops.py +++ b/pandas/tests/arrays/boolean/test_ops.py @@ -1,5 +1,5 @@ import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestUnaryOps: diff --git a/pandas/tests/arrays/categorical/test_algos.py b/pandas/tests/arrays/categorical/test_algos.py index 45e0d503f30e7..647c174a6a016 100644 --- a/pandas/tests/arrays/categorical/test_algos.py +++ b/pandas/tests/arrays/categorical/test_algos.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize("ordered", [True, False]) diff --git a/pandas/tests/arrays/categorical/test_analytics.py b/pandas/tests/arrays/categorical/test_analytics.py index 4bf9b4b40d0b6..36d74e43ccf64 100644 --- a/pandas/tests/arrays/categorical/test_analytics.py +++ b/pandas/tests/arrays/categorical/test_analytics.py @@ -6,8 +6,7 @@ from pandas.compat import PYPY -from pandas import Categorical, Index, NaT, Series, date_range -import pandas._testing as tm +from pandas import Categorical, Index, NaT, Series, _testing as tm, date_range from pandas.api.types import is_scalar diff --git a/pandas/tests/arrays/categorical/test_api.py b/pandas/tests/arrays/categorical/test_api.py index 6fce4b4145ff2..4507bef3c3c5c 100644 --- a/pandas/tests/arrays/categorical/test_api.py +++ b/pandas/tests/arrays/categorical/test_api.py @@ -3,8 +3,14 @@ import numpy as np import pytest -from pandas import Categorical, CategoricalIndex, DataFrame, Index, Series -import pandas._testing as tm +from pandas import ( + Categorical, + CategoricalIndex, + DataFrame, + Index, + Series, + _testing as tm, +) from pandas.core.arrays.categorical import recode_for_categories from pandas.tests.arrays.categorical.common import TestCategorical diff --git a/pandas/tests/arrays/categorical/test_constructors.py b/pandas/tests/arrays/categorical/test_constructors.py index ca942c9288898..9743143753cf6 100644 --- a/pandas/tests/arrays/categorical/test_constructors.py +++ b/pandas/tests/arrays/categorical/test_constructors.py @@ -20,11 +20,11 @@ NaT, Series, Timestamp, + _testing as tm, date_range, period_range, timedelta_range, ) -import pandas._testing as tm class TestCategoricalConstructors: diff --git a/pandas/tests/arrays/categorical/test_dtypes.py b/pandas/tests/arrays/categorical/test_dtypes.py index 47ce9cb4089f9..c69dd474dca46 100644 --- a/pandas/tests/arrays/categorical/test_dtypes.py +++ b/pandas/tests/arrays/categorical/test_dtypes.py @@ -3,8 +3,14 @@ from pandas.core.dtypes.dtypes import CategoricalDtype -from pandas import Categorical, CategoricalIndex, Index, Series, Timestamp -import pandas._testing as tm +from pandas import ( + Categorical, + CategoricalIndex, + Index, + Series, + Timestamp, + _testing as tm, +) class TestCategoricalDtypes: diff --git a/pandas/tests/arrays/categorical/test_indexing.py b/pandas/tests/arrays/categorical/test_indexing.py index abfae189bb4d7..8eb451a6edba0 100644 --- a/pandas/tests/arrays/categorical/test_indexing.py +++ b/pandas/tests/arrays/categorical/test_indexing.py @@ -2,9 +2,15 @@ import pytest import pandas as pd -from pandas import Categorical, CategoricalIndex, Index, PeriodIndex, Series -import pandas._testing as tm -import pandas.core.common as com +from pandas import ( + Categorical, + CategoricalIndex, + Index, + PeriodIndex, + Series, + _testing as tm, +) +from pandas.core import common as com from pandas.tests.arrays.categorical.common import TestCategorical diff --git a/pandas/tests/arrays/categorical/test_missing.py b/pandas/tests/arrays/categorical/test_missing.py index 5309b8827e3f0..0443b8d87a071 100644 --- a/pandas/tests/arrays/categorical/test_missing.py +++ b/pandas/tests/arrays/categorical/test_missing.py @@ -6,8 +6,7 @@ from pandas.core.dtypes.dtypes import CategoricalDtype import pandas as pd -from pandas import Categorical, DataFrame, Index, Series, isna -import pandas._testing as tm +from pandas import Categorical, DataFrame, Index, Series, _testing as tm, isna class TestCategoricalMissing: diff --git a/pandas/tests/arrays/categorical/test_operators.py b/pandas/tests/arrays/categorical/test_operators.py index 6ea003c122eea..0e2a6d40f7df7 100644 --- a/pandas/tests/arrays/categorical/test_operators.py +++ b/pandas/tests/arrays/categorical/test_operators.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import Categorical, DataFrame, Series, date_range -import pandas._testing as tm +from pandas import Categorical, DataFrame, Series, _testing as tm, date_range from pandas.tests.arrays.categorical.common import TestCategorical diff --git a/pandas/tests/arrays/categorical/test_replace.py b/pandas/tests/arrays/categorical/test_replace.py index b9ac3ce9a37ae..81494a1ed974b 100644 --- a/pandas/tests/arrays/categorical/test_replace.py +++ b/pandas/tests/arrays/categorical/test_replace.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/arrays/categorical/test_sorting.py b/pandas/tests/arrays/categorical/test_sorting.py index 2a0ef043bf9a9..55abe26e2f743 100644 --- a/pandas/tests/arrays/categorical/test_sorting.py +++ b/pandas/tests/arrays/categorical/test_sorting.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Categorical, Index -import pandas._testing as tm +from pandas import Categorical, Index, _testing as tm class TestCategoricalSort: diff --git a/pandas/tests/arrays/categorical/test_subclass.py b/pandas/tests/arrays/categorical/test_subclass.py index b80d0ff41aba6..d15f4157c27fb 100644 --- a/pandas/tests/arrays/categorical/test_subclass.py +++ b/pandas/tests/arrays/categorical/test_subclass.py @@ -1,5 +1,4 @@ -from pandas import Categorical -import pandas._testing as tm +from pandas import Categorical, _testing as tm class TestCategoricalSubclassing: diff --git a/pandas/tests/arrays/categorical/test_warnings.py b/pandas/tests/arrays/categorical/test_warnings.py index 9e164a250cdb1..e396037974be4 100644 --- a/pandas/tests/arrays/categorical/test_warnings.py +++ b/pandas/tests/arrays/categorical/test_warnings.py @@ -2,7 +2,7 @@ from pandas.util._test_decorators import async_mark -import pandas._testing as tm +from pandas import _testing as tm class TestCategoricalWarnings: diff --git a/pandas/tests/arrays/integer/test_arithmetic.py b/pandas/tests/arrays/integer/test_arithmetic.py index d309f6423e0c1..0a5d2dad0e7a6 100644 --- a/pandas/tests/arrays/integer/test_arithmetic.py +++ b/pandas/tests/arrays/integer/test_arithmetic.py @@ -4,9 +4,9 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.core import ops as ops from pandas.core.arrays import integer_array -import pandas.core.ops as ops # Basic test for the arithmetic array ops # ----------------------------------------------------------------------------- diff --git a/pandas/tests/arrays/integer/test_comparison.py b/pandas/tests/arrays/integer/test_comparison.py index 1767250af09b0..d0583f0ff6a00 100644 --- a/pandas/tests/arrays/integer/test_comparison.py +++ b/pandas/tests/arrays/integer/test_comparison.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.extension.base import BaseOpsUtil diff --git a/pandas/tests/arrays/integer/test_concat.py b/pandas/tests/arrays/integer/test_concat.py index 3ace35700bd3e..90180776f6b71 100644 --- a/pandas/tests/arrays/integer/test_concat.py +++ b/pandas/tests/arrays/integer/test_concat.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/arrays/integer/test_construction.py b/pandas/tests/arrays/integer/test_construction.py index 1893c4554bfbf..b80d1d6ad25c6 100644 --- a/pandas/tests/arrays/integer/test_construction.py +++ b/pandas/tests/arrays/integer/test_construction.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.api.types import is_integer from pandas.core.arrays import IntegerArray, integer_array from pandas.core.arrays.integer import Int8Dtype, Int32Dtype, Int64Dtype diff --git a/pandas/tests/arrays/integer/test_dtypes.py b/pandas/tests/arrays/integer/test_dtypes.py index cafe9e47a18f4..b6916f900ebbe 100644 --- a/pandas/tests/arrays/integer/test_dtypes.py +++ b/pandas/tests/arrays/integer/test_dtypes.py @@ -4,7 +4,7 @@ from pandas.core.dtypes.generic import ABCIndexClass import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import integer_array from pandas.core.arrays.integer import Int8Dtype, UInt32Dtype diff --git a/pandas/tests/arrays/integer/test_function.py b/pandas/tests/arrays/integer/test_function.py index 44c3077228e80..7b61a0f9ff19d 100644 --- a/pandas/tests/arrays/integer/test_function.py +++ b/pandas/tests/arrays/integer/test_function.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import integer_array diff --git a/pandas/tests/arrays/integer/test_indexing.py b/pandas/tests/arrays/integer/test_indexing.py index 4b953d699108b..7baf118bf58a0 100644 --- a/pandas/tests/arrays/integer/test_indexing.py +++ b/pandas/tests/arrays/integer/test_indexing.py @@ -1,5 +1,5 @@ import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_array_setitem_nullable_boolean_mask(): diff --git a/pandas/tests/arrays/interval/test_interval.py b/pandas/tests/arrays/interval/test_interval.py index d517eaaec68d2..69c0e038d225b 100644 --- a/pandas/tests/arrays/interval/test_interval.py +++ b/pandas/tests/arrays/interval/test_interval.py @@ -1,8 +1,6 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd from pandas import ( Index, @@ -10,11 +8,12 @@ IntervalIndex, Timedelta, Timestamp, + _testing as tm, date_range, timedelta_range, ) -import pandas._testing as tm from pandas.core.arrays import IntervalArray +from pandas.util import _test_decorators as td @pytest.fixture( @@ -142,6 +141,7 @@ def test_repr(): @pyarrow_skip def test_arrow_extension_type(): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowIntervalType p1 = ArrowIntervalType(pa.int64(), "left") @@ -158,6 +158,7 @@ def test_arrow_extension_type(): @pyarrow_skip def test_arrow_array(): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowIntervalType intervals = pd.interval_range(1, 5, freq=1).array @@ -187,6 +188,7 @@ def test_arrow_array(): @pyarrow_skip def test_arrow_array_missing(): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowIntervalType arr = IntervalArray.from_breaks([0.0, 1.0, 2.0, 3.0]) @@ -221,6 +223,7 @@ def test_arrow_array_missing(): ) def test_arrow_table_roundtrip(breaks): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowIntervalType arr = IntervalArray.from_breaks(breaks) diff --git a/pandas/tests/arrays/interval/test_ops.py b/pandas/tests/arrays/interval/test_ops.py index 9c78c2a48b9ff..31f6c31219efa 100644 --- a/pandas/tests/arrays/interval/test_ops.py +++ b/pandas/tests/arrays/interval/test_ops.py @@ -2,8 +2,7 @@ import numpy as np import pytest -from pandas import Interval, IntervalIndex, Timedelta, Timestamp -import pandas._testing as tm +from pandas import Interval, IntervalIndex, Timedelta, Timestamp, _testing as tm from pandas.core.arrays import IntervalArray diff --git a/pandas/tests/arrays/masked/test_arithmetic.py b/pandas/tests/arrays/masked/test_arithmetic.py index db938c36fe7ae..4612b0d9778a8 100644 --- a/pandas/tests/arrays/masked/test_arithmetic.py +++ b/pandas/tests/arrays/masked/test_arithmetic.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import ExtensionArray arrays = [pd.array([1, 2, 3, None], dtype=dtype) for dtype in tm.ALL_EA_INT_DTYPES] diff --git a/pandas/tests/arrays/masked/test_arrow_compat.py b/pandas/tests/arrays/masked/test_arrow_compat.py index b63bb0fbd9a3b..8c6243c970f18 100644 --- a/pandas/tests/arrays/masked/test_arrow_compat.py +++ b/pandas/tests/arrays/masked/test_arrow_compat.py @@ -1,9 +1,8 @@ import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td arrays = [pd.array([1, 2, 3, None], dtype=dtype) for dtype in tm.ALL_EA_INT_DTYPES] arrays += [pd.array([True, False, True, None], dtype="boolean")] diff --git a/pandas/tests/arrays/sparse/test_accessor.py b/pandas/tests/arrays/sparse/test_accessor.py index 2a81b94ce779c..40c38be73356b 100644 --- a/pandas/tests/arrays/sparse/test_accessor.py +++ b/pandas/tests/arrays/sparse/test_accessor.py @@ -3,11 +3,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays.sparse import SparseArray, SparseDtype +from pandas.util import _test_decorators as td class TestSeriesAccessor: diff --git a/pandas/tests/arrays/sparse/test_arithmetics.py b/pandas/tests/arrays/sparse/test_arithmetics.py index c9f1dd7f589fc..c7eebbd425e30 100644 --- a/pandas/tests/arrays/sparse/test_arithmetics.py +++ b/pandas/tests/arrays/sparse/test_arithmetics.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core import ops from pandas.core.arrays.sparse import SparseArray, SparseDtype diff --git a/pandas/tests/arrays/sparse/test_array.py b/pandas/tests/arrays/sparse/test_array.py index d0cdec712f39d..56034ca6ca236 100644 --- a/pandas/tests/arrays/sparse/test_array.py +++ b/pandas/tests/arrays/sparse/test_array.py @@ -6,12 +6,11 @@ import pytest from pandas._libs.sparse import IntIndex -import pandas.util._test_decorators as td import pandas as pd -from pandas import isna -import pandas._testing as tm +from pandas import _testing as tm, isna from pandas.core.arrays.sparse import SparseArray, SparseDtype +from pandas.util import _test_decorators as td @pytest.fixture(params=["integer", "block"]) diff --git a/pandas/tests/arrays/sparse/test_combine_concat.py b/pandas/tests/arrays/sparse/test_combine_concat.py index 0f09af269148b..bd0070256d0e5 100644 --- a/pandas/tests/arrays/sparse/test_combine_concat.py +++ b/pandas/tests/arrays/sparse/test_combine_concat.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays.sparse import SparseArray diff --git a/pandas/tests/arrays/sparse/test_libsparse.py b/pandas/tests/arrays/sparse/test_libsparse.py index a2f861d378e67..d7100f14341a4 100644 --- a/pandas/tests/arrays/sparse/test_libsparse.py +++ b/pandas/tests/arrays/sparse/test_libsparse.py @@ -3,12 +3,11 @@ import numpy as np import pytest -import pandas._libs.sparse as splib -import pandas.util._test_decorators as td +from pandas._libs import sparse as splib -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm from pandas.core.arrays.sparse import BlockIndex, IntIndex, _make_index +from pandas.util import _test_decorators as td TEST_LENGTH = 20 diff --git a/pandas/tests/arrays/string_/test_string.py b/pandas/tests/arrays/string_/test_string.py index 6f9a1a5be4c43..db010958a2845 100644 --- a/pandas/tests/arrays/string_/test_string.py +++ b/pandas/tests/arrays/string_/test_string.py @@ -3,10 +3,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td def test_repr(): diff --git a/pandas/tests/arrays/test_array.py b/pandas/tests/arrays/test_array.py index ad6e6e4a98057..99ec15b3f72ed 100644 --- a/pandas/tests/arrays/test_array.py +++ b/pandas/tests/arrays/test_array.py @@ -8,7 +8,7 @@ from pandas.core.dtypes.dtypes import registry import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.api.extensions import register_extension_dtype from pandas.api.types import is_scalar from pandas.arrays import ( diff --git a/pandas/tests/arrays/test_datetimelike.py b/pandas/tests/arrays/test_datetimelike.py index b1ab700427c28..8559d11e1ab31 100644 --- a/pandas/tests/arrays/test_datetimelike.py +++ b/pandas/tests/arrays/test_datetimelike.py @@ -7,7 +7,7 @@ from pandas.compat.numpy import _np_version_under1p18 import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import DatetimeArray, PeriodArray, TimedeltaArray from pandas.core.indexes.datetimes import DatetimeIndex from pandas.core.indexes.period import Period, PeriodIndex diff --git a/pandas/tests/arrays/test_datetimes.py b/pandas/tests/arrays/test_datetimes.py index 804654451a6d9..10f95bd7d237d 100644 --- a/pandas/tests/arrays/test_datetimes.py +++ b/pandas/tests/arrays/test_datetimes.py @@ -9,7 +9,7 @@ from pandas.core.dtypes.dtypes import DatetimeTZDtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import DatetimeArray from pandas.core.arrays.datetimes import sequence_to_dt64ns diff --git a/pandas/tests/arrays/test_numpy.py b/pandas/tests/arrays/test_numpy.py index 86793c4ec50dd..fb81972c3557b 100644 --- a/pandas/tests/arrays/test_numpy.py +++ b/pandas/tests/arrays/test_numpy.py @@ -6,7 +6,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import PandasArray from pandas.core.arrays.numpy_ import PandasDtype diff --git a/pandas/tests/arrays/test_period.py b/pandas/tests/arrays/test_period.py index 27e6334788284..b353fe855ae6f 100644 --- a/pandas/tests/arrays/test_period.py +++ b/pandas/tests/arrays/test_period.py @@ -3,13 +3,13 @@ from pandas._libs.tslibs import iNaT from pandas._libs.tslibs.period import IncompatibleFrequency -import pandas.util._test_decorators as td from pandas.core.dtypes.dtypes import PeriodDtype, registry import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import PeriodArray, period_array +from pandas.util import _test_decorators as td # ---------------------------------------------------------------------------- # Dtype @@ -358,6 +358,7 @@ def test_arrow_extension_type(): ) def test_arrow_array(data, freq): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowPeriodType periods = period_array(data, freq=freq) @@ -383,6 +384,7 @@ def test_arrow_array(data, freq): @pyarrow_skip def test_arrow_array_missing(): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowPeriodType arr = PeriodArray([1, 2, 3], freq="D") @@ -398,6 +400,7 @@ def test_arrow_array_missing(): @pyarrow_skip def test_arrow_table_roundtrip(): import pyarrow as pa + from pandas.core.arrays._arrow_utils import ArrowPeriodType arr = PeriodArray([1, 2, 3], freq="D") diff --git a/pandas/tests/arrays/test_timedeltas.py b/pandas/tests/arrays/test_timedeltas.py index c86b4f71ee592..6a3d8f25f3499 100644 --- a/pandas/tests/arrays/test_timedeltas.py +++ b/pandas/tests/arrays/test_timedeltas.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import TimedeltaArray diff --git a/pandas/tests/base/test_constructors.py b/pandas/tests/base/test_constructors.py index 697364fc87175..e6dcb90ccbc21 100644 --- a/pandas/tests/base/test_constructors.py +++ b/pandas/tests/base/test_constructors.py @@ -7,8 +7,7 @@ from pandas.compat import PYPY import pandas as pd -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm from pandas.core.accessor import PandasDelegate from pandas.core.base import NoNewAttributesMixin, PandasObject diff --git a/pandas/tests/base/test_conversion.py b/pandas/tests/base/test_conversion.py index b688a048cbe8e..a3c06f2dafe69 100644 --- a/pandas/tests/base/test_conversion.py +++ b/pandas/tests/base/test_conversion.py @@ -5,8 +5,7 @@ from pandas.core.dtypes.dtypes import DatetimeTZDtype import pandas as pd -from pandas import CategoricalIndex, Series, Timedelta, Timestamp -import pandas._testing as tm +from pandas import CategoricalIndex, Series, Timedelta, Timestamp, _testing as tm from pandas.core.arrays import ( DatetimeArray, IntervalArray, diff --git a/pandas/tests/base/test_drop_duplicates.py b/pandas/tests/base/test_drop_duplicates.py index 4032890b4db18..ace39bec637cd 100644 --- a/pandas/tests/base/test_drop_duplicates.py +++ b/pandas/tests/base/test_drop_duplicates.py @@ -3,7 +3,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_drop_duplicates_series_vs_dataframe(): diff --git a/pandas/tests/base/test_factorize.py b/pandas/tests/base/test_factorize.py index 415a8b7e4362f..2be2bb1b893af 100644 --- a/pandas/tests/base/test_factorize.py +++ b/pandas/tests/base/test_factorize.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize("sort", [True, False]) diff --git a/pandas/tests/base/test_fillna.py b/pandas/tests/base/test_fillna.py index c6f58af4c5c3a..641944cd18641 100644 --- a/pandas/tests/base/test_fillna.py +++ b/pandas/tests/base/test_fillna.py @@ -2,7 +2,6 @@ Though Index.fillna and Series.fillna has separate impl, test here to confirm these works as the same """ - import numpy as np import pytest @@ -11,8 +10,7 @@ from pandas.core.dtypes.common import needs_i8_conversion from pandas.core.dtypes.generic import ABCMultiIndex -from pandas import Index -import pandas._testing as tm +from pandas import Index, _testing as tm from pandas.tests.base.common import allow_na_ops diff --git a/pandas/tests/base/test_misc.py b/pandas/tests/base/test_misc.py index 78a830c7f43d8..7f506c5985d93 100644 --- a/pandas/tests/base/test_misc.py +++ b/pandas/tests/base/test_misc.py @@ -13,8 +13,7 @@ ) import pandas as pd -from pandas import DataFrame, Index, IntervalIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, IntervalIndex, Series, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/base/test_transpose.py b/pandas/tests/base/test_transpose.py index 5ba278368834c..ddbfad3ccf5a1 100644 --- a/pandas/tests/base/test_transpose.py +++ b/pandas/tests/base/test_transpose.py @@ -1,7 +1,7 @@ import numpy as np import pytest -import pandas._testing as tm +from pandas import _testing as tm def test_transpose(index_or_series_obj): diff --git a/pandas/tests/base/test_unique.py b/pandas/tests/base/test_unique.py index e5592cef59592..1970fc3782196 100644 --- a/pandas/tests/base/test_unique.py +++ b/pandas/tests/base/test_unique.py @@ -6,7 +6,7 @@ from pandas.core.dtypes.common import is_datetime64tz_dtype, needs_i8_conversion import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.base.common import allow_na_ops diff --git a/pandas/tests/base/test_value_counts.py b/pandas/tests/base/test_value_counts.py index de04c30432e6f..16df47e203b2d 100644 --- a/pandas/tests/base/test_value_counts.py +++ b/pandas/tests/base/test_value_counts.py @@ -19,8 +19,8 @@ Series, Timedelta, TimedeltaIndex, + _testing as tm, ) -import pandas._testing as tm from pandas.tests.base.common import allow_na_ops diff --git a/pandas/tests/computation/test_compat.py b/pandas/tests/computation/test_compat.py index b3fbd8c17d8bf..1fae055ffe666 100644 --- a/pandas/tests/computation/test_compat.py +++ b/pandas/tests/computation/test_compat.py @@ -5,8 +5,8 @@ from pandas.compat._optional import VERSIONS import pandas as pd +from pandas.core.computation import expr as expr from pandas.core.computation.engines import _engines -import pandas.core.computation.expr as expr def test_compat(): diff --git a/pandas/tests/computation/test_eval.py b/pandas/tests/computation/test_eval.py index 08d8d5ca342b7..f9cd0cea8753a 100644 --- a/pandas/tests/computation/test_eval.py +++ b/pandas/tests/computation/test_eval.py @@ -10,17 +10,14 @@ import pytest from pandas.errors import PerformanceWarning -import pandas.util._test_decorators as td from pandas.core.dtypes.common import is_bool, is_list_like, is_scalar import pandas as pd -from pandas import DataFrame, Series, compat, date_range -import pandas._testing as tm -from pandas.core.computation import pytables +from pandas import DataFrame, Series, _testing as tm, compat, date_range +from pandas.core.computation import expr as expr, pytables from pandas.core.computation.check import _NUMEXPR_VERSION from pandas.core.computation.engines import NumExprClobberingError, _engines -import pandas.core.computation.expr as expr from pandas.core.computation.expr import ( BaseExprVisitor, PandasExprVisitor, @@ -34,6 +31,7 @@ _special_case_arith_ops_syms, _unary_math_ops, ) +from pandas.util import _test_decorators as td @pytest.fixture( diff --git a/pandas/tests/dtypes/cast/test_construct_from_scalar.py b/pandas/tests/dtypes/cast/test_construct_from_scalar.py index ed272cef3e7ba..b7360de38d631 100644 --- a/pandas/tests/dtypes/cast/test_construct_from_scalar.py +++ b/pandas/tests/dtypes/cast/test_construct_from_scalar.py @@ -1,8 +1,7 @@ from pandas.core.dtypes.cast import construct_1d_arraylike_from_scalar from pandas.core.dtypes.dtypes import CategoricalDtype -from pandas import Categorical -import pandas._testing as tm +from pandas import Categorical, _testing as tm def test_cast_1d_array_like_from_scalar_categorical(): diff --git a/pandas/tests/dtypes/cast/test_construct_ndarray.py b/pandas/tests/dtypes/cast/test_construct_ndarray.py index fe271392122a2..fcd50c0f53242 100644 --- a/pandas/tests/dtypes/cast/test_construct_ndarray.py +++ b/pandas/tests/dtypes/cast/test_construct_ndarray.py @@ -3,7 +3,7 @@ from pandas.core.dtypes.cast import construct_1d_ndarray_preserving_na -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/dtypes/cast/test_downcast.py b/pandas/tests/dtypes/cast/test_downcast.py index d6e6ed3022b75..7ab1498c09f5b 100644 --- a/pandas/tests/dtypes/cast/test_downcast.py +++ b/pandas/tests/dtypes/cast/test_downcast.py @@ -5,8 +5,7 @@ from pandas.core.dtypes.cast import maybe_downcast_to_dtype -from pandas import DatetimeIndex, Series, Timestamp -import pandas._testing as tm +from pandas import DatetimeIndex, Series, Timestamp, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/dtypes/cast/test_infer_dtype.py b/pandas/tests/dtypes/cast/test_infer_dtype.py index 70d38aad951cc..fc1a99bd478f2 100644 --- a/pandas/tests/dtypes/cast/test_infer_dtype.py +++ b/pandas/tests/dtypes/cast/test_infer_dtype.py @@ -17,9 +17,9 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm @pytest.fixture(params=[True, False]) diff --git a/pandas/tests/dtypes/cast/test_upcast.py b/pandas/tests/dtypes/cast/test_upcast.py index f9227a4e78a79..353caa4fefb47 100644 --- a/pandas/tests/dtypes/cast/test_upcast.py +++ b/pandas/tests/dtypes/cast/test_upcast.py @@ -3,8 +3,7 @@ from pandas.core.dtypes.cast import maybe_upcast_putmask -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm @pytest.mark.parametrize("result", [Series([10, 11, 12]), [10, 11, 12], (10, 11, 12)]) diff --git a/pandas/tests/dtypes/test_common.py b/pandas/tests/dtypes/test_common.py index ce12718e48d0d..d2526a4c7a01e 100644 --- a/pandas/tests/dtypes/test_common.py +++ b/pandas/tests/dtypes/test_common.py @@ -4,10 +4,8 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - +from pandas.core.dtypes import common as com from pandas.core.dtypes.cast import astype_nansafe -import pandas.core.dtypes.common as com from pandas.core.dtypes.dtypes import ( CategoricalDtype, CategoricalDtypeType, @@ -18,8 +16,9 @@ from pandas.core.dtypes.missing import isna import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import SparseArray +from pandas.util import _test_decorators as td # EA & Actual Dtypes diff --git a/pandas/tests/dtypes/test_concat.py b/pandas/tests/dtypes/test_concat.py index 1fbbd3356ae13..38425b83de4c0 100644 --- a/pandas/tests/dtypes/test_concat.py +++ b/pandas/tests/dtypes/test_concat.py @@ -1,10 +1,16 @@ import pytest -import pandas.core.dtypes.concat as _concat +from pandas.core.dtypes import concat as _concat import pandas as pd -from pandas import DatetimeIndex, Period, PeriodIndex, Series, TimedeltaIndex -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Period, + PeriodIndex, + Series, + TimedeltaIndex, + _testing as tm, +) @pytest.mark.parametrize( diff --git a/pandas/tests/dtypes/test_dtypes.py b/pandas/tests/dtypes/test_dtypes.py index b1fe673e9e2f1..69c0baa81a277 100644 --- a/pandas/tests/dtypes/test_dtypes.py +++ b/pandas/tests/dtypes/test_dtypes.py @@ -32,9 +32,9 @@ DatetimeIndex, IntervalIndex, Series, + _testing as tm, date_range, ) -import pandas._testing as tm from pandas.core.arrays.sparse import SparseArray, SparseDtype diff --git a/pandas/tests/dtypes/test_generic.py b/pandas/tests/dtypes/test_generic.py index e51b0546b0cee..09524b94291e3 100644 --- a/pandas/tests/dtypes/test_generic.py +++ b/pandas/tests/dtypes/test_generic.py @@ -5,7 +5,7 @@ from pandas.core.dtypes import generic as gt import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestABCClasses: diff --git a/pandas/tests/dtypes/test_inference.py b/pandas/tests/dtypes/test_inference.py index e40a12f7bc8d1..2aa3a625a3122 100644 --- a/pandas/tests/dtypes/test_inference.py +++ b/pandas/tests/dtypes/test_inference.py @@ -17,7 +17,6 @@ import pytz from pandas._libs import lib, missing as libmissing -import pandas.util._test_decorators as td from pandas.core.dtypes import inference from pandas.core.dtypes.common import ( @@ -49,9 +48,10 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, ) -import pandas._testing as tm from pandas.core.arrays import IntegerArray +from pandas.util import _test_decorators as td @pytest.fixture(params=[True, False], ids=str) diff --git a/pandas/tests/dtypes/test_missing.py b/pandas/tests/dtypes/test_missing.py index f9a854c5778a2..26b358e5b26e0 100644 --- a/pandas/tests/dtypes/test_missing.py +++ b/pandas/tests/dtypes/test_missing.py @@ -21,8 +21,15 @@ ) import pandas as pd -from pandas import DatetimeIndex, Float64Index, NaT, Series, TimedeltaIndex, date_range -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Float64Index, + NaT, + Series, + TimedeltaIndex, + _testing as tm, + date_range, +) now = pd.Timestamp.now() utcnow = pd.Timestamp.now("UTC") diff --git a/pandas/tests/extension/arrow/test_bool.py b/pandas/tests/extension/arrow/test_bool.py index 7841360e568ed..263cf0d8b1a44 100644 --- a/pandas/tests/extension/arrow/test_bool.py +++ b/pandas/tests/extension/arrow/test_bool.py @@ -4,7 +4,7 @@ from pandas.compat import PY37 import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.extension import base pytest.importorskip("pyarrow", minversion="0.13.0") diff --git a/pandas/tests/extension/base/base.py b/pandas/tests/extension/base/base.py index 97d8e7c66dbdb..511d352be46a5 100644 --- a/pandas/tests/extension/base/base.py +++ b/pandas/tests/extension/base/base.py @@ -1,4 +1,4 @@ -import pandas._testing as tm +from pandas import _testing as tm class BaseExtensionTests: diff --git a/pandas/tests/extension/base/groupby.py b/pandas/tests/extension/base/groupby.py index 94d0ef7bbea84..78cebd85713a3 100644 --- a/pandas/tests/extension/base/groupby.py +++ b/pandas/tests/extension/base/groupby.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/interface.py b/pandas/tests/extension/base/interface.py index 9ae4b01508d79..6bfb168247d63 100644 --- a/pandas/tests/extension/base/interface.py +++ b/pandas/tests/extension/base/interface.py @@ -4,7 +4,7 @@ from pandas.core.dtypes.dtypes import ExtensionDtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/methods.py b/pandas/tests/extension/base/methods.py index 874a8dfd4253f..9ad16ee98d20e 100644 --- a/pandas/tests/extension/base/methods.py +++ b/pandas/tests/extension/base/methods.py @@ -6,7 +6,7 @@ from pandas.core.dtypes.common import is_bool_dtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.sorting import nargsort from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/missing.py b/pandas/tests/extension/base/missing.py index a5969ef961bab..ba315a5c72cfe 100644 --- a/pandas/tests/extension/base/missing.py +++ b/pandas/tests/extension/base/missing.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/ops.py b/pandas/tests/extension/base/ops.py index 359acf230ce14..84eddff69c450 100644 --- a/pandas/tests/extension/base/ops.py +++ b/pandas/tests/extension/base/ops.py @@ -3,7 +3,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core import ops from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/reduce.py b/pandas/tests/extension/base/reduce.py index 6f433d659575a..303bf07c5b76a 100644 --- a/pandas/tests/extension/base/reduce.py +++ b/pandas/tests/extension/base/reduce.py @@ -3,7 +3,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .base import BaseExtensionTests diff --git a/pandas/tests/extension/base/setitem.py b/pandas/tests/extension/base/setitem.py index bfa53ad02525b..9c183551aa814 100644 --- a/pandas/tests/extension/base/setitem.py +++ b/pandas/tests/extension/base/setitem.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .base import BaseExtensionTests diff --git a/pandas/tests/extension/decimal/test_decimal.py b/pandas/tests/extension/decimal/test_decimal.py index 233b658d29782..4195be7c1453b 100644 --- a/pandas/tests/extension/decimal/test_decimal.py +++ b/pandas/tests/extension/decimal/test_decimal.py @@ -6,7 +6,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.extension import base from .array import DecimalArray, DecimalDtype, make_data, to_decimal diff --git a/pandas/tests/extension/json/test_json.py b/pandas/tests/extension/json/test_json.py index 74ca341e27bf8..6a47a76fa78ac 100644 --- a/pandas/tests/extension/json/test_json.py +++ b/pandas/tests/extension/json/test_json.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.extension import base from .array import JSONArray, JSONDtype, make_data diff --git a/pandas/tests/extension/test_boolean.py b/pandas/tests/extension/test_boolean.py index 725067951eeef..102bec9b6befa 100644 --- a/pandas/tests/extension/test_boolean.py +++ b/pandas/tests/extension/test_boolean.py @@ -17,7 +17,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays.boolean import BooleanDtype from pandas.tests.extension import base diff --git a/pandas/tests/extension/test_categorical.py b/pandas/tests/extension/test_categorical.py index f7b572a70073a..0715bce62ea6e 100644 --- a/pandas/tests/extension/test_categorical.py +++ b/pandas/tests/extension/test_categorical.py @@ -19,8 +19,7 @@ import pytest import pandas as pd -from pandas import Categorical, CategoricalIndex, Timestamp -import pandas._testing as tm +from pandas import Categorical, CategoricalIndex, Timestamp, _testing as tm from pandas.api.types import CategoricalDtype from pandas.tests.extension import base diff --git a/pandas/tests/extension/test_common.py b/pandas/tests/extension/test_common.py index e43650c291200..c7d138675edc8 100644 --- a/pandas/tests/extension/test_common.py +++ b/pandas/tests/extension/test_common.py @@ -5,7 +5,7 @@ from pandas.core.dtypes.common import is_extension_array_dtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import ExtensionArray diff --git a/pandas/tests/extension/test_integer.py b/pandas/tests/extension/test_integer.py index 725533765ca2c..16aa2c6eb9382 100644 --- a/pandas/tests/extension/test_integer.py +++ b/pandas/tests/extension/test_integer.py @@ -19,7 +19,7 @@ from pandas.core.dtypes.common import is_extension_array_dtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays import integer_array from pandas.core.arrays.integer import ( Int8Dtype, diff --git a/pandas/tests/extension/test_numpy.py b/pandas/tests/extension/test_numpy.py index 78000c0252375..31a712299cb41 100644 --- a/pandas/tests/extension/test_numpy.py +++ b/pandas/tests/extension/test_numpy.py @@ -4,7 +4,7 @@ from pandas.compat.numpy import _np_version_under1p16 import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays.numpy_ import PandasArray, PandasDtype from . import base diff --git a/pandas/tests/extension/test_sparse.py b/pandas/tests/extension/test_sparse.py index f318934ef5e52..f2f33f71cc847 100644 --- a/pandas/tests/extension/test_sparse.py +++ b/pandas/tests/extension/test_sparse.py @@ -6,8 +6,7 @@ from pandas.core.dtypes.common import is_object_dtype import pandas as pd -from pandas import SparseDtype -import pandas._testing as tm +from pandas import SparseDtype, _testing as tm from pandas.arrays import SparseArray from pandas.tests.extension import base diff --git a/pandas/tests/frame/conftest.py b/pandas/tests/frame/conftest.py index 486d140849159..188d81ddfb957 100644 --- a/pandas/tests/frame/conftest.py +++ b/pandas/tests/frame/conftest.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, NaT, date_range -import pandas._testing as tm +from pandas import DataFrame, NaT, _testing as tm, date_range @pytest.fixture(params=product([True, False], [True, False])) diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py index 9c2d88f1589c2..415e927e87abe 100644 --- a/pandas/tests/frame/indexing/test_at.py +++ b/pandas/tests/frame/indexing/test_at.py @@ -1,7 +1,7 @@ from datetime import datetime, timezone import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_at_timezone(): diff --git a/pandas/tests/frame/indexing/test_categorical.py b/pandas/tests/frame/indexing/test_categorical.py index d94dc8d2ffe00..17ca0aea02318 100644 --- a/pandas/tests/frame/indexing/test_categorical.py +++ b/pandas/tests/frame/indexing/test_categorical.py @@ -4,8 +4,7 @@ from pandas.core.dtypes.dtypes import CategoricalDtype import pandas as pd -from pandas import Categorical, DataFrame, Index, Series -import pandas._testing as tm +from pandas import Categorical, DataFrame, Index, Series, _testing as tm class TestDataFrameIndexingCategorical: diff --git a/pandas/tests/frame/indexing/test_datetime.py b/pandas/tests/frame/indexing/test_datetime.py index 1937a4c380dc9..61264a5ec59c4 100644 --- a/pandas/tests/frame/indexing/test_datetime.py +++ b/pandas/tests/frame/indexing/test_datetime.py @@ -1,6 +1,5 @@ import pandas as pd -from pandas import DataFrame, Index, Series, date_range, notna -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm, date_range, notna class TestDataFrameIndexingDatetimeWithTZ: diff --git a/pandas/tests/frame/indexing/test_get.py b/pandas/tests/frame/indexing/test_get.py index 5f2651eec683c..b6076b8a62af7 100644 --- a/pandas/tests/frame/indexing/test_get.py +++ b/pandas/tests/frame/indexing/test_get.py @@ -1,7 +1,6 @@ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestGet: diff --git a/pandas/tests/frame/indexing/test_indexing.py b/pandas/tests/frame/indexing/test_indexing.py index 3865ea64ee479..786b78185c8eb 100644 --- a/pandas/tests/frame/indexing/test_indexing.py +++ b/pandas/tests/frame/indexing/test_indexing.py @@ -16,13 +16,13 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, isna, notna, ) -import pandas._testing as tm from pandas.arrays import SparseArray -import pandas.core.common as com +from pandas.core import common as com from pandas.core.indexing import IndexingError from pandas.tseries.offsets import BDay diff --git a/pandas/tests/frame/indexing/test_insert.py b/pandas/tests/frame/indexing/test_insert.py index 622c93d1c2fdc..18856011505b4 100644 --- a/pandas/tests/frame/indexing/test_insert.py +++ b/pandas/tests/frame/indexing/test_insert.py @@ -6,8 +6,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm class TestDataFrameInsert: diff --git a/pandas/tests/frame/indexing/test_mask.py b/pandas/tests/frame/indexing/test_mask.py index 30db6110efc80..2db6bc1401f57 100644 --- a/pandas/tests/frame/indexing/test_mask.py +++ b/pandas/tests/frame/indexing/test_mask.py @@ -1,11 +1,9 @@ """ Tests for DataFrame.mask; tests DataFrame.where as a side-effect. """ - import numpy as np -from pandas import DataFrame, isna -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, isna class TestDataFrameMask: diff --git a/pandas/tests/frame/indexing/test_setitem.py b/pandas/tests/frame/indexing/test_setitem.py index 8fcdae95fbab5..d72debea583cb 100644 --- a/pandas/tests/frame/indexing/test_setitem.py +++ b/pandas/tests/frame/indexing/test_setitem.py @@ -1,8 +1,15 @@ import numpy as np import pytest -from pandas import Categorical, DataFrame, Index, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + Categorical, + DataFrame, + Index, + Series, + Timestamp, + _testing as tm, + date_range, +) from pandas.core.arrays import SparseArray diff --git a/pandas/tests/frame/indexing/test_take.py b/pandas/tests/frame/indexing/test_take.py index 3b59d3cf10658..e6b8ac1d7ff87 100644 --- a/pandas/tests/frame/indexing/test_take.py +++ b/pandas/tests/frame/indexing/test_take.py @@ -1,6 +1,6 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm class TestDataFrameTake: diff --git a/pandas/tests/frame/indexing/test_where.py b/pandas/tests/frame/indexing/test_where.py index 24eb424bd5735..623344fbed19c 100644 --- a/pandas/tests/frame/indexing/test_where.py +++ b/pandas/tests/frame/indexing/test_where.py @@ -6,8 +6,15 @@ from pandas.core.dtypes.common import is_scalar import pandas as pd -from pandas import DataFrame, DatetimeIndex, Series, Timestamp, date_range, isna -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Series, + Timestamp, + _testing as tm, + date_range, + isna, +) @pytest.fixture(params=["default", "float_string", "mixed_float", "mixed_int"]) diff --git a/pandas/tests/frame/indexing/test_xs.py b/pandas/tests/frame/indexing/test_xs.py index 71b40585f0c2f..01be0f4530f2b 100644 --- a/pandas/tests/frame/indexing/test_xs.py +++ b/pandas/tests/frame/indexing/test_xs.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.tseries.offsets import BDay diff --git a/pandas/tests/frame/methods/test_align.py b/pandas/tests/frame/methods/test_align.py index d19b59debfdea..498b9107cb0f7 100644 --- a/pandas/tests/frame/methods/test_align.py +++ b/pandas/tests/frame/methods/test_align.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm class TestDataFrameAlign: diff --git a/pandas/tests/frame/methods/test_append.py b/pandas/tests/frame/methods/test_append.py index 9fc3629e794e2..2cebb2a319b56 100644 --- a/pandas/tests/frame/methods/test_append.py +++ b/pandas/tests/frame/methods/test_append.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm class TestDataFrameAppend: diff --git a/pandas/tests/frame/methods/test_asfreq.py b/pandas/tests/frame/methods/test_asfreq.py index 40b0ec0c0d811..ba011ad9d4420 100644 --- a/pandas/tests/frame/methods/test_asfreq.py +++ b/pandas/tests/frame/methods/test_asfreq.py @@ -2,8 +2,7 @@ import numpy as np -from pandas import DataFrame, DatetimeIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, DatetimeIndex, Series, _testing as tm, date_range from pandas.tseries import offsets diff --git a/pandas/tests/frame/methods/test_asof.py b/pandas/tests/frame/methods/test_asof.py index 70b42976c95a7..7d56fc7f2907a 100644 --- a/pandas/tests/frame/methods/test_asof.py +++ b/pandas/tests/frame/methods/test_asof.py @@ -8,11 +8,11 @@ Period, Series, Timestamp, + _testing as tm, date_range, period_range, to_datetime, ) -import pandas._testing as tm @pytest.fixture diff --git a/pandas/tests/frame/methods/test_assign.py b/pandas/tests/frame/methods/test_assign.py index 0ae501d43e742..8cc33198dc80f 100644 --- a/pandas/tests/frame/methods/test_assign.py +++ b/pandas/tests/frame/methods/test_assign.py @@ -1,7 +1,6 @@ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestAssign: diff --git a/pandas/tests/frame/methods/test_astype.py b/pandas/tests/frame/methods/test_astype.py index b0fd0496ea81e..b664919f11210 100644 --- a/pandas/tests/frame/methods/test_astype.py +++ b/pandas/tests/frame/methods/test_astype.py @@ -14,11 +14,11 @@ Timedelta, Timestamp, UInt64Index, + _testing as tm, concat, date_range, option_context, ) -import pandas._testing as tm from pandas.core.arrays import integer_array diff --git a/pandas/tests/frame/methods/test_at_time.py b/pandas/tests/frame/methods/test_at_time.py index ac98d632c5dcd..5d710ca0a45a6 100644 --- a/pandas/tests/frame/methods/test_at_time.py +++ b/pandas/tests/frame/methods/test_at_time.py @@ -4,8 +4,7 @@ import pytest import pytz -from pandas import DataFrame, date_range -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range class TestAtTime: diff --git a/pandas/tests/frame/methods/test_between_time.py b/pandas/tests/frame/methods/test_between_time.py index 19e802d0fa663..52e7b18bb3803 100644 --- a/pandas/tests/frame/methods/test_between_time.py +++ b/pandas/tests/frame/methods/test_between_time.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, date_range -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range class TestBetweenTime: diff --git a/pandas/tests/frame/methods/test_clip.py b/pandas/tests/frame/methods/test_clip.py index 34727da3b95ae..474fc7da4d7b4 100644 --- a/pandas/tests/frame/methods/test_clip.py +++ b/pandas/tests/frame/methods/test_clip.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFrameClip: diff --git a/pandas/tests/frame/methods/test_combine.py b/pandas/tests/frame/methods/test_combine.py index bc6a67e4e1f32..66aa8a1bd8a9a 100644 --- a/pandas/tests/frame/methods/test_combine.py +++ b/pandas/tests/frame/methods/test_combine.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestCombine: diff --git a/pandas/tests/frame/methods/test_combine_first.py b/pandas/tests/frame/methods/test_combine_first.py index 7715cb1cb6eec..b9036d6209438 100644 --- a/pandas/tests/frame/methods/test_combine_first.py +++ b/pandas/tests/frame/methods/test_combine_first.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm class TestDataFrameCombineFirst: diff --git a/pandas/tests/frame/methods/test_compare.py b/pandas/tests/frame/methods/test_compare.py index 468811eba0d39..c90cec390e657 100644 --- a/pandas/tests/frame/methods/test_compare.py +++ b/pandas/tests/frame/methods/test_compare.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize("align_axis", [0, 1, "index", "columns"]) diff --git a/pandas/tests/frame/methods/test_count.py b/pandas/tests/frame/methods/test_count.py index 13a93e3efc48c..a3129231b7c65 100644 --- a/pandas/tests/frame/methods/test_count.py +++ b/pandas/tests/frame/methods/test_count.py @@ -1,5 +1,4 @@ -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFrameCount: diff --git a/pandas/tests/frame/methods/test_cov_corr.py b/pandas/tests/frame/methods/test_cov_corr.py index d3548b639572d..838b1ddd1954e 100644 --- a/pandas/tests/frame/methods/test_cov_corr.py +++ b/pandas/tests/frame/methods/test_cov_corr.py @@ -3,11 +3,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series, isna -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, isna +from pandas.util import _test_decorators as td class TestDataFrameCov: diff --git a/pandas/tests/frame/methods/test_describe.py b/pandas/tests/frame/methods/test_describe.py index b61d0d28e2fba..f17cb7b1156f1 100644 --- a/pandas/tests/frame/methods/test_describe.py +++ b/pandas/tests/frame/methods/test_describe.py @@ -1,8 +1,7 @@ import numpy as np import pandas as pd -from pandas import Categorical, DataFrame, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import Categorical, DataFrame, Series, Timestamp, _testing as tm, date_range class TestDataFrameDescribe: diff --git a/pandas/tests/frame/methods/test_diff.py b/pandas/tests/frame/methods/test_diff.py index 45f134a93a23a..8cf73257cca63 100644 --- a/pandas/tests/frame/methods/test_diff.py +++ b/pandas/tests/frame/methods/test_diff.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm, date_range class TestDataFrameDiff: diff --git a/pandas/tests/frame/methods/test_drop.py b/pandas/tests/frame/methods/test_drop.py index 177d10cdbf615..92f265623ec4a 100644 --- a/pandas/tests/frame/methods/test_drop.py +++ b/pandas/tests/frame/methods/test_drop.py @@ -6,8 +6,7 @@ from pandas.errors import PerformanceWarning import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/frame/methods/test_drop_duplicates.py b/pandas/tests/frame/methods/test_drop_duplicates.py index 7c6391140e2bb..c2050d90c24f6 100644 --- a/pandas/tests/frame/methods/test_drop_duplicates.py +++ b/pandas/tests/frame/methods/test_drop_duplicates.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.mark.parametrize("subset", ["a", ["a"], ["a", "B"]]) diff --git a/pandas/tests/frame/methods/test_droplevel.py b/pandas/tests/frame/methods/test_droplevel.py index 517905cf23259..6ef1cdec474bf 100644 --- a/pandas/tests/frame/methods/test_droplevel.py +++ b/pandas/tests/frame/methods/test_droplevel.py @@ -1,5 +1,4 @@ -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm class TestDropLevel: diff --git a/pandas/tests/frame/methods/test_duplicated.py b/pandas/tests/frame/methods/test_duplicated.py index 7a1c16adc2a09..59b6cf5b93178 100644 --- a/pandas/tests/frame/methods/test_duplicated.py +++ b/pandas/tests/frame/methods/test_duplicated.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range @pytest.mark.parametrize("subset", ["a", ["a"], ["a", "B"]]) diff --git a/pandas/tests/frame/methods/test_explode.py b/pandas/tests/frame/methods/test_explode.py index 2bbe8ac2d5b81..3db9e6cd91a88 100644 --- a/pandas/tests/frame/methods/test_explode.py +++ b/pandas/tests/frame/methods/test_explode.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_error(): diff --git a/pandas/tests/frame/methods/test_filter.py b/pandas/tests/frame/methods/test_filter.py index 569b2fe21d1c2..66780efaad74c 100644 --- a/pandas/tests/frame/methods/test_filter.py +++ b/pandas/tests/frame/methods/test_filter.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestDataFrameFilter: diff --git a/pandas/tests/frame/methods/test_first_and_last.py b/pandas/tests/frame/methods/test_first_and_last.py index 2b3756969acca..4ce1b93f11df1 100644 --- a/pandas/tests/frame/methods/test_first_and_last.py +++ b/pandas/tests/frame/methods/test_first_and_last.py @@ -3,8 +3,7 @@ """ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestFirst: diff --git a/pandas/tests/frame/methods/test_head_tail.py b/pandas/tests/frame/methods/test_head_tail.py index 93763bc12ce0d..2df3974b38578 100644 --- a/pandas/tests/frame/methods/test_head_tail.py +++ b/pandas/tests/frame/methods/test_head_tail.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm def test_head_tail(float_frame): diff --git a/pandas/tests/frame/methods/test_interpolate.py b/pandas/tests/frame/methods/test_interpolate.py index facb116646573..a543bd4a20390 100644 --- a/pandas/tests/frame/methods/test_interpolate.py +++ b/pandas/tests/frame/methods/test_interpolate.py @@ -1,10 +1,8 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range +from pandas.util import _test_decorators as td class TestDataFrameInterpolate: diff --git a/pandas/tests/frame/methods/test_isin.py b/pandas/tests/frame/methods/test_isin.py index 79ea70a38f145..b26b3fe14509f 100644 --- a/pandas/tests/frame/methods/test_isin.py +++ b/pandas/tests/frame/methods/test_isin.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm class TestDataFrameIsIn: diff --git a/pandas/tests/frame/methods/test_nlargest.py b/pandas/tests/frame/methods/test_nlargest.py index 4ce474230b686..d9b3979e82462 100644 --- a/pandas/tests/frame/methods/test_nlargest.py +++ b/pandas/tests/frame/methods/test_nlargest.py @@ -8,7 +8,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture diff --git a/pandas/tests/frame/methods/test_pct_change.py b/pandas/tests/frame/methods/test_pct_change.py index 8f3f37fb9fff7..6b99799251ccb 100644 --- a/pandas/tests/frame/methods/test_pct_change.py +++ b/pandas/tests/frame/methods/test_pct_change.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFramePctChange: diff --git a/pandas/tests/frame/methods/test_pop.py b/pandas/tests/frame/methods/test_pop.py index fccb3f10dde45..9c38448ad8ce6 100644 --- a/pandas/tests/frame/methods/test_pop.py +++ b/pandas/tests/frame/methods/test_pop.py @@ -1,5 +1,4 @@ -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFramePop: diff --git a/pandas/tests/frame/methods/test_quantile.py b/pandas/tests/frame/methods/test_quantile.py index 0eec30cbc5c67..3a0f49d89ee99 100644 --- a/pandas/tests/frame/methods/test_quantile.py +++ b/pandas/tests/frame/methods/test_quantile.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm class TestDataFrameQuantile: diff --git a/pandas/tests/frame/methods/test_rank.py b/pandas/tests/frame/methods/test_rank.py index bab2db3192b4a..95236de3be07d 100644 --- a/pandas/tests/frame/methods/test_rank.py +++ b/pandas/tests/frame/methods/test_rank.py @@ -3,10 +3,8 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm +from pandas.util import _test_decorators as td class TestRank: diff --git a/pandas/tests/frame/methods/test_reindex_like.py b/pandas/tests/frame/methods/test_reindex_like.py index ce68ec28eec3d..e53d155a41f73 100644 --- a/pandas/tests/frame/methods/test_reindex_like.py +++ b/pandas/tests/frame/methods/test_reindex_like.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestDataFrameReindexLike: diff --git a/pandas/tests/frame/methods/test_rename.py b/pandas/tests/frame/methods/test_rename.py index ffad526d3f4d1..035c8dd729fa0 100644 --- a/pandas/tests/frame/methods/test_rename.py +++ b/pandas/tests/frame/methods/test_rename.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm class TestRename: diff --git a/pandas/tests/frame/methods/test_rename_axis.py b/pandas/tests/frame/methods/test_rename_axis.py index 9b964d842526c..800c9b4aba762 100644 --- a/pandas/tests/frame/methods/test_rename_axis.py +++ b/pandas/tests/frame/methods/test_rename_axis.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm class TestDataFrameRenameAxis: diff --git a/pandas/tests/frame/methods/test_replace.py b/pandas/tests/frame/methods/test_replace.py index 498f7f7790514..43ff58bc7c0ec 100644 --- a/pandas/tests/frame/methods/test_replace.py +++ b/pandas/tests/frame/methods/test_replace.py @@ -7,8 +7,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, Series, Timestamp, _testing as tm, date_range @pytest.fixture diff --git a/pandas/tests/frame/methods/test_reset_index.py b/pandas/tests/frame/methods/test_reset_index.py index cf0bbe144caa5..9a185af62e0fa 100644 --- a/pandas/tests/frame/methods/test_reset_index.py +++ b/pandas/tests/frame/methods/test_reset_index.py @@ -12,9 +12,9 @@ RangeIndex, Series, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm class TestResetIndex: diff --git a/pandas/tests/frame/methods/test_round.py b/pandas/tests/frame/methods/test_round.py index 3051f27882fb8..60cc33956e888 100644 --- a/pandas/tests/frame/methods/test_round.py +++ b/pandas/tests/frame/methods/test_round.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range class TestDataFrameRound: diff --git a/pandas/tests/frame/methods/test_select_dtypes.py b/pandas/tests/frame/methods/test_select_dtypes.py index fe7baebcf0cf7..b925042963bdd 100644 --- a/pandas/tests/frame/methods/test_select_dtypes.py +++ b/pandas/tests/frame/methods/test_select_dtypes.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Timestamp, _testing as tm class TestSelectDtypes: diff --git a/pandas/tests/frame/methods/test_set_index.py b/pandas/tests/frame/methods/test_set_index.py index 5f62697cc3e43..88b7b521aec64 100644 --- a/pandas/tests/frame/methods/test_set_index.py +++ b/pandas/tests/frame/methods/test_set_index.py @@ -3,8 +3,15 @@ import numpy as np import pytest -from pandas import DataFrame, DatetimeIndex, Index, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Index, + MultiIndex, + Series, + _testing as tm, + date_range, +) class TestSetIndex: diff --git a/pandas/tests/frame/methods/test_shift.py b/pandas/tests/frame/methods/test_shift.py index 9ec029a6c4304..bdb7feb2fff70 100644 --- a/pandas/tests/frame/methods/test_shift.py +++ b/pandas/tests/frame/methods/test_shift.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, date_range, offsets -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm, date_range, offsets class TestDataFrameShift: diff --git a/pandas/tests/frame/methods/test_sort_index.py b/pandas/tests/frame/methods/test_sort_index.py index 543d87485d3c4..99ae175c2974e 100644 --- a/pandas/tests/frame/methods/test_sort_index.py +++ b/pandas/tests/frame/methods/test_sort_index.py @@ -2,8 +2,15 @@ import pytest import pandas as pd -from pandas import CategoricalDtype, DataFrame, Index, IntervalIndex, MultiIndex, Series -import pandas._testing as tm +from pandas import ( + CategoricalDtype, + DataFrame, + Index, + IntervalIndex, + MultiIndex, + Series, + _testing as tm, +) class TestDataFrameSortIndex: diff --git a/pandas/tests/frame/methods/test_sort_values.py b/pandas/tests/frame/methods/test_sort_values.py index 1275da01eace9..d14d64b2a09bc 100644 --- a/pandas/tests/frame/methods/test_sort_values.py +++ b/pandas/tests/frame/methods/test_sort_values.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Categorical, DataFrame, NaT, Timestamp, date_range -import pandas._testing as tm +from pandas import Categorical, DataFrame, NaT, Timestamp, _testing as tm, date_range class TestDataFrameSortValues: diff --git a/pandas/tests/frame/methods/test_to_dict.py b/pandas/tests/frame/methods/test_to_dict.py index f1656b46cf356..bae57b8793b7a 100644 --- a/pandas/tests/frame/methods/test_to_dict.py +++ b/pandas/tests/frame/methods/test_to_dict.py @@ -5,8 +5,7 @@ import pytest import pytz -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm class TestDataFrameToDict: diff --git a/pandas/tests/frame/methods/test_to_period.py b/pandas/tests/frame/methods/test_to_period.py index 051461b6c554d..ae814f3cb9bc7 100644 --- a/pandas/tests/frame/methods/test_to_period.py +++ b/pandas/tests/frame/methods/test_to_period.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, date_range, period_range -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range, period_range class TestToPeriod: diff --git a/pandas/tests/frame/methods/test_to_records.py b/pandas/tests/frame/methods/test_to_records.py index d9c999c9119f4..cb5bf7bd891fe 100644 --- a/pandas/tests/frame/methods/test_to_records.py +++ b/pandas/tests/frame/methods/test_to_records.py @@ -9,9 +9,9 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm class TestDataFrameToRecords: diff --git a/pandas/tests/frame/methods/test_to_timestamp.py b/pandas/tests/frame/methods/test_to_timestamp.py index ae7d2827e05a6..13964cd62a1f0 100644 --- a/pandas/tests/frame/methods/test_to_timestamp.py +++ b/pandas/tests/frame/methods/test_to_timestamp.py @@ -7,11 +7,11 @@ DataFrame, DatetimeIndex, Timedelta, + _testing as tm, date_range, period_range, to_datetime, ) -import pandas._testing as tm class TestToTimestamp: diff --git a/pandas/tests/frame/methods/test_transpose.py b/pandas/tests/frame/methods/test_transpose.py index a5fe5f3a6d5e4..418de30a5d426 100644 --- a/pandas/tests/frame/methods/test_transpose.py +++ b/pandas/tests/frame/methods/test_transpose.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestTranspose: diff --git a/pandas/tests/frame/methods/test_truncate.py b/pandas/tests/frame/methods/test_truncate.py index 674f482c478a0..5f0d44de35e5d 100644 --- a/pandas/tests/frame/methods/test_truncate.py +++ b/pandas/tests/frame/methods/test_truncate.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestDataFrameTruncate: diff --git a/pandas/tests/frame/methods/test_tz_convert.py b/pandas/tests/frame/methods/test_tz_convert.py index d2ab7a386a92d..a36a02f3c4c54 100644 --- a/pandas/tests/frame/methods/test_tz_convert.py +++ b/pandas/tests/frame/methods/test_tz_convert.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm, date_range class TestTZConvert: diff --git a/pandas/tests/frame/methods/test_tz_localize.py b/pandas/tests/frame/methods/test_tz_localize.py index 1d4e26a6999b7..64d2879225cdc 100644 --- a/pandas/tests/frame/methods/test_tz_localize.py +++ b/pandas/tests/frame/methods/test_tz_localize.py @@ -1,5 +1,4 @@ -from pandas import DataFrame, date_range -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range class TestTZLocalize: diff --git a/pandas/tests/frame/methods/test_update.py b/pandas/tests/frame/methods/test_update.py index d9de026dbf4e9..6027c604ab51f 100644 --- a/pandas/tests/frame/methods/test_update.py +++ b/pandas/tests/frame/methods/test_update.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range class TestDataFrameUpdate: diff --git a/pandas/tests/frame/methods/test_value_counts.py b/pandas/tests/frame/methods/test_value_counts.py index c409b0bbe6fa9..be47345b2a30b 100644 --- a/pandas/tests/frame/methods/test_value_counts.py +++ b/pandas/tests/frame/methods/test_value_counts.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_data_frame_value_counts_unsorted(): diff --git a/pandas/tests/frame/test_alter_axes.py b/pandas/tests/frame/test_alter_axes.py index 486855f5c37cd..82621c08f82c6 100644 --- a/pandas/tests/frame/test_alter_axes.py +++ b/pandas/tests/frame/test_alter_axes.py @@ -18,11 +18,11 @@ IntervalIndex, Series, Timestamp, + _testing as tm, cut, date_range, to_datetime, ) -import pandas._testing as tm class TestDataFrameAlterAxes: diff --git a/pandas/tests/frame/test_analytics.py b/pandas/tests/frame/test_analytics.py index db8bb5ca3c437..068475011684c 100644 --- a/pandas/tests/frame/test_analytics.py +++ b/pandas/tests/frame/test_analytics.py @@ -5,8 +5,6 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd from pandas import ( Categorical, @@ -14,15 +12,15 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, isna, notna, to_datetime, to_timedelta, ) -import pandas._testing as tm -import pandas.core.algorithms as algorithms -import pandas.core.nanops as nanops +from pandas.core import algorithms as algorithms, nanops as nanops +from pandas.util import _test_decorators as td def assert_stat_op_calc( @@ -287,7 +285,7 @@ def test_stat_op_api(self, float_frame, float_string_frame): assert_stat_op_api("median", float_frame, float_string_frame) try: - from scipy.stats import skew, kurtosis # noqa:F401 + from scipy.stats import kurtosis, skew # noqa:F401 assert_stat_op_api("skew", float_frame, float_string_frame) assert_stat_op_api("kurt", float_frame, float_string_frame) @@ -370,7 +368,7 @@ def kurt(x): ) try: - from scipy import skew, kurtosis # noqa:F401 + from scipy import kurtosis, skew # noqa:F401 assert_stat_op_calc("skew", skewness, float_frame_with_na) assert_stat_op_calc("kurt", kurt, float_frame_with_na) diff --git a/pandas/tests/frame/test_api.py b/pandas/tests/frame/test_api.py index 2b79fc8cd3406..2b34f7c431490 100644 --- a/pandas/tests/frame/test_api.py +++ b/pandas/tests/frame/test_api.py @@ -10,8 +10,15 @@ from pandas.util._test_decorators import async_mark, skip_if_no import pandas as pd -from pandas import Categorical, DataFrame, Series, compat, date_range, timedelta_range -import pandas._testing as tm +from pandas import ( + Categorical, + DataFrame, + Series, + _testing as tm, + compat, + date_range, + timedelta_range, +) class TestDataFrameMisc: diff --git a/pandas/tests/frame/test_apply.py b/pandas/tests/frame/test_apply.py index 3a32278e2a4b1..c5c3e2e44753c 100644 --- a/pandas/tests/frame/test_apply.py +++ b/pandas/tests/frame/test_apply.py @@ -10,8 +10,15 @@ from pandas.core.dtypes.dtypes import CategoricalDtype import pandas as pd -from pandas import DataFrame, MultiIndex, Series, Timestamp, date_range, notna -import pandas._testing as tm +from pandas import ( + DataFrame, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, + notna, +) from pandas.core.apply import frame_apply from pandas.core.base import SpecificationError diff --git a/pandas/tests/frame/test_arithmetic.py b/pandas/tests/frame/test_arithmetic.py index a6b0ece58b095..4f98d039e4a74 100644 --- a/pandas/tests/frame/test_arithmetic.py +++ b/pandas/tests/frame/test_arithmetic.py @@ -8,9 +8,8 @@ import pytz import pandas as pd -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm -import pandas.core.common as com +from pandas import DataFrame, MultiIndex, Series, _testing as tm +from pandas.core import common as com from pandas.core.computation.expressions import _MIN_ELEMENTS, _NUMEXPR_INSTALLED from pandas.tests.frame.common import _check_mixed_float, _check_mixed_int diff --git a/pandas/tests/frame/test_axis_select_reindex.py b/pandas/tests/frame/test_axis_select_reindex.py index b68e20bee63fc..5a19023640e09 100644 --- a/pandas/tests/frame/test_axis_select_reindex.py +++ b/pandas/tests/frame/test_axis_select_reindex.py @@ -4,8 +4,16 @@ import pytest import pandas as pd -from pandas import Categorical, DataFrame, Index, MultiIndex, Series, date_range, isna -import pandas._testing as tm +from pandas import ( + Categorical, + DataFrame, + Index, + MultiIndex, + Series, + _testing as tm, + date_range, + isna, +) class TestDataFrameSelectReindex: diff --git a/pandas/tests/frame/test_block_internals.py b/pandas/tests/frame/test_block_internals.py index d5554860c034d..5468439196740 100644 --- a/pandas/tests/frame/test_block_internals.py +++ b/pandas/tests/frame/test_block_internals.py @@ -11,11 +11,11 @@ DataFrame, Series, Timestamp, + _testing as tm, compat, date_range, option_context, ) -import pandas._testing as tm from pandas.core.arrays import IntervalArray, integer_array from pandas.core.internals import ObjectBlock from pandas.core.internals.blocks import IntBlock diff --git a/pandas/tests/frame/test_combine_concat.py b/pandas/tests/frame/test_combine_concat.py index 7eba2b873c4f4..73a3103bed854 100644 --- a/pandas/tests/frame/test_combine_concat.py +++ b/pandas/tests/frame/test_combine_concat.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, Series, Timestamp, _testing as tm, date_range class TestDataFrameConcat: diff --git a/pandas/tests/frame/test_constructors.py b/pandas/tests/frame/test_constructors.py index dba243f1a339a..9e1de21b1cf71 100644 --- a/pandas/tests/frame/test_constructors.py +++ b/pandas/tests/frame/test_constructors.py @@ -5,8 +5,8 @@ import re import numpy as np -import numpy.ma as ma -import numpy.ma.mrecords as mrecords +from numpy import ma as ma +from numpy.ma import mrecords as mrecords import pytest import pytz @@ -25,10 +25,10 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, isna, ) -import pandas._testing as tm from pandas.arrays import IntervalArray, PeriodArray, SparseArray from pandas.core.construction import create_series_with_explicit_dtype diff --git a/pandas/tests/frame/test_cumulative.py b/pandas/tests/frame/test_cumulative.py index 248f3500c41df..655d982b022c2 100644 --- a/pandas/tests/frame/test_cumulative.py +++ b/pandas/tests/frame/test_cumulative.py @@ -5,11 +5,9 @@ -------- tests.series.test_cumulative """ - import numpy as np -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFrameCumulativeOps: diff --git a/pandas/tests/frame/test_dtypes.py b/pandas/tests/frame/test_dtypes.py index f3e3ef9bae5c6..05021d3a0f9b9 100644 --- a/pandas/tests/frame/test_dtypes.py +++ b/pandas/tests/frame/test_dtypes.py @@ -7,8 +7,14 @@ from pandas.core.dtypes.dtypes import DatetimeTZDtype import pandas as pd -from pandas import DataFrame, Series, Timestamp, date_range, option_context -import pandas._testing as tm +from pandas import ( + DataFrame, + Series, + Timestamp, + _testing as tm, + date_range, + option_context, +) def _check_cast(df, v): diff --git a/pandas/tests/frame/test_join.py b/pandas/tests/frame/test_join.py index 4d6e675c6765f..7ef8f965fef48 100644 --- a/pandas/tests/frame/test_join.py +++ b/pandas/tests/frame/test_join.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, period_range -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm, period_range @pytest.fixture diff --git a/pandas/tests/frame/test_missing.py b/pandas/tests/frame/test_missing.py index 7cb7115276f71..f2191b20250ff 100644 --- a/pandas/tests/frame/test_missing.py +++ b/pandas/tests/frame/test_missing.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import Categorical, DataFrame, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import Categorical, DataFrame, Series, Timestamp, _testing as tm, date_range from pandas.tests.frame.common import _check_mixed_float diff --git a/pandas/tests/frame/test_nonunique_indexes.py b/pandas/tests/frame/test_nonunique_indexes.py index a8b76f4d85f49..840731a307778 100644 --- a/pandas/tests/frame/test_nonunique_indexes.py +++ b/pandas/tests/frame/test_nonunique_indexes.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm, date_range class TestDataFrameNonuniqueIndexes: diff --git a/pandas/tests/frame/test_operators.py b/pandas/tests/frame/test_operators.py index fede1ca23a8ce..68b654bca2bab 100644 --- a/pandas/tests/frame/test_operators.py +++ b/pandas/tests/frame/test_operators.py @@ -6,8 +6,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestDataFrameUnaryOperators: diff --git a/pandas/tests/frame/test_period.py b/pandas/tests/frame/test_period.py index c378194b9e2b2..60946330993ad 100644 --- a/pandas/tests/frame/test_period.py +++ b/pandas/tests/frame/test_period.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import DataFrame, Index, PeriodIndex, period_range -import pandas._testing as tm +from pandas import DataFrame, Index, PeriodIndex, _testing as tm, period_range class TestPeriodIndex: diff --git a/pandas/tests/frame/test_query_eval.py b/pandas/tests/frame/test_query_eval.py index 98a2a33822e3b..abb253efada48 100644 --- a/pandas/tests/frame/test_query_eval.py +++ b/pandas/tests/frame/test_query_eval.py @@ -4,12 +4,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, date_range from pandas.core.computation.check import _NUMEXPR_INSTALLED +from pandas.util import _test_decorators as td PARSERS = "python", "pandas" ENGINES = "python", pytest.param("numexpr", marks=td.skip_if_no_ne) diff --git a/pandas/tests/frame/test_repr_info.py b/pandas/tests/frame/test_repr_info.py index 6d786d9580542..d32a05a1397b4 100644 --- a/pandas/tests/frame/test_repr_info.py +++ b/pandas/tests/frame/test_repr_info.py @@ -9,13 +9,13 @@ Categorical, DataFrame, Series, + _testing as tm, date_range, option_context, period_range, ) -import pandas._testing as tm -import pandas.io.formats.format as fmt +from pandas.io.formats import format as fmt class TestDataFrameReprInfoEtc: diff --git a/pandas/tests/frame/test_reshape.py b/pandas/tests/frame/test_reshape.py index 1634baacf6d6e..12e9619de21b4 100644 --- a/pandas/tests/frame/test_reshape.py +++ b/pandas/tests/frame/test_reshape.py @@ -5,8 +5,16 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Period, Series, Timedelta, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Index, + MultiIndex, + Period, + Series, + Timedelta, + _testing as tm, + date_range, +) class TestDataFrameReshape: diff --git a/pandas/tests/frame/test_sort_values_level_as_str.py b/pandas/tests/frame/test_sort_values_level_as_str.py index 40526ab27ac9a..34625c0c8ea02 100644 --- a/pandas/tests/frame/test_sort_values_level_as_str.py +++ b/pandas/tests/frame/test_sort_values_level_as_str.py @@ -3,8 +3,7 @@ from pandas.errors import PerformanceWarning -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.fixture diff --git a/pandas/tests/frame/test_subclass.py b/pandas/tests/frame/test_subclass.py index 08920cf7fceeb..f0bd4389cc9ec 100644 --- a/pandas/tests/frame/test_subclass.py +++ b/pandas/tests/frame/test_subclass.py @@ -1,11 +1,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm +from pandas.util import _test_decorators as td class TestDataFrameSubclassing: diff --git a/pandas/tests/frame/test_timeseries.py b/pandas/tests/frame/test_timeseries.py index 63361789b8e50..e16321f7437ea 100644 --- a/pandas/tests/frame/test_timeseries.py +++ b/pandas/tests/frame/test_timeseries.py @@ -1,8 +1,7 @@ import numpy as np import pandas as pd -from pandas import DataFrame, date_range, to_datetime -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range, to_datetime class TestDataFrameTimeSeriesMethods: diff --git a/pandas/tests/frame/test_timezones.py b/pandas/tests/frame/test_timezones.py index dfd4fb1855383..51e190fe8834d 100644 --- a/pandas/tests/frame/test_timezones.py +++ b/pandas/tests/frame/test_timezones.py @@ -8,8 +8,7 @@ from pandas.core.dtypes.dtypes import DatetimeTZDtype import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.indexes.datetimes import date_range diff --git a/pandas/tests/frame/test_to_csv.py b/pandas/tests/frame/test_to_csv.py index 2b7b3af8f4705..0dabcd94deee1 100644 --- a/pandas/tests/frame/test_to_csv.py +++ b/pandas/tests/frame/test_to_csv.py @@ -14,12 +14,12 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, read_csv, to_datetime, ) -import pandas._testing as tm -import pandas.core.common as com +from pandas.core import common as com from pandas.io.common import get_handle diff --git a/pandas/tests/generic/methods/test_dot.py b/pandas/tests/generic/methods/test_dot.py index ecbec6b06e923..2cbc5a9fe0006 100644 --- a/pandas/tests/generic/methods/test_dot.py +++ b/pandas/tests/generic/methods/test_dot.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class DotSharedTests: diff --git a/pandas/tests/generic/methods/test_first_valid_index.py b/pandas/tests/generic/methods/test_first_valid_index.py index bca3452c3c458..2c099432494a1 100644 --- a/pandas/tests/generic/methods/test_first_valid_index.py +++ b/pandas/tests/generic/methods/test_first_valid_index.py @@ -4,8 +4,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range class TestFirstValidIndex: diff --git a/pandas/tests/generic/methods/test_reorder_levels.py b/pandas/tests/generic/methods/test_reorder_levels.py index 8bb6417e56659..4d36bee328fe5 100644 --- a/pandas/tests/generic/methods/test_reorder_levels.py +++ b/pandas/tests/generic/methods/test_reorder_levels.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm class TestReorderLevels: diff --git a/pandas/tests/generic/methods/test_set_axis.py b/pandas/tests/generic/methods/test_set_axis.py index 278d43ef93d2f..bab2b32c79788 100644 --- a/pandas/tests/generic/methods/test_set_axis.py +++ b/pandas/tests/generic/methods/test_set_axis.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class SharedSetAxisTests: diff --git a/pandas/tests/generic/test_frame.py b/pandas/tests/generic/test_frame.py index 31501f20db453..9ae7dd1327cef 100644 --- a/pandas/tests/generic/test_frame.py +++ b/pandas/tests/generic/test_frame.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm, date_range from .test_generic import Generic diff --git a/pandas/tests/generic/test_generic.py b/pandas/tests/generic/test_generic.py index 94747a52136c4..5413838ef2e86 100644 --- a/pandas/tests/generic/test_generic.py +++ b/pandas/tests/generic/test_generic.py @@ -8,9 +8,8 @@ from pandas.core.dtypes.common import is_scalar import pandas as pd -from pandas import DataFrame, MultiIndex, Series, date_range -import pandas._testing as tm -import pandas.core.common as com +from pandas import DataFrame, MultiIndex, Series, _testing as tm, date_range +from pandas.core import common as com # ---------------------------------------------------------------------- # Generic types test cases diff --git a/pandas/tests/generic/test_series.py b/pandas/tests/generic/test_series.py index 07c02330d85ce..17b93eb372f3a 100644 --- a/pandas/tests/generic/test_series.py +++ b/pandas/tests/generic/test_series.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import MultiIndex, Series, _testing as tm, date_range from .test_generic import Generic diff --git a/pandas/tests/generic/test_to_xarray.py b/pandas/tests/generic/test_to_xarray.py index ab56a752f7e90..7f0f2fba12b76 100644 --- a/pandas/tests/generic/test_to_xarray.py +++ b/pandas/tests/generic/test_to_xarray.py @@ -1,11 +1,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm +from pandas.util import _test_decorators as td class TestDataFrameToXArray: diff --git a/pandas/tests/groupby/aggregate/test_aggregate.py b/pandas/tests/groupby/aggregate/test_aggregate.py index dbd713a0af4cf..a200dd111043e 100644 --- a/pandas/tests/groupby/aggregate/test_aggregate.py +++ b/pandas/tests/groupby/aggregate/test_aggregate.py @@ -9,8 +9,7 @@ from pandas.core.dtypes.common import is_integer_dtype import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, concat -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, concat from pandas.core.base import SpecificationError from pandas.core.groupby.grouper import Grouping diff --git a/pandas/tests/groupby/aggregate/test_cython.py b/pandas/tests/groupby/aggregate/test_cython.py index 5ddda264642de..ff9081c44c975 100644 --- a/pandas/tests/groupby/aggregate/test_cython.py +++ b/pandas/tests/groupby/aggregate/test_cython.py @@ -1,13 +1,20 @@ """ test cython .agg behavior """ - import numpy as np import pytest import pandas as pd -from pandas import DataFrame, Index, NaT, Series, Timedelta, Timestamp, bdate_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Index, + NaT, + Series, + Timedelta, + Timestamp, + _testing as tm, + bdate_range, +) from pandas.core.groupby.groupby import DataError diff --git a/pandas/tests/groupby/aggregate/test_numba.py b/pandas/tests/groupby/aggregate/test_numba.py index 726d79535184a..990b749626476 100644 --- a/pandas/tests/groupby/aggregate/test_numba.py +++ b/pandas/tests/groupby/aggregate/test_numba.py @@ -2,11 +2,10 @@ import pytest from pandas.errors import NumbaUtilError -import pandas.util._test_decorators as td -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.core.util.numba_ import NUMBA_FUNC_CACHE +from pandas.util import _test_decorators as td @td.skip_if_no("numba", "0.46.0") diff --git a/pandas/tests/groupby/aggregate/test_other.py b/pandas/tests/groupby/aggregate/test_other.py index 264cf40dc6984..f1158fb5d3058 100644 --- a/pandas/tests/groupby/aggregate/test_other.py +++ b/pandas/tests/groupby/aggregate/test_other.py @@ -1,7 +1,6 @@ """ test all other .agg behavior """ - import datetime as dt from functools import partial @@ -15,10 +14,10 @@ MultiIndex, PeriodIndex, Series, + _testing as tm, date_range, period_range, ) -import pandas._testing as tm from pandas.core.base import SpecificationError from pandas.io.formats.printing import pprint_thing diff --git a/pandas/tests/groupby/conftest.py b/pandas/tests/groupby/conftest.py index 0b9721968a881..3446a93e1eb13 100644 --- a/pandas/tests/groupby/conftest.py +++ b/pandas/tests/groupby/conftest.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, _testing as tm from pandas.core.groupby.base import reduction_kernels, transformation_kernels diff --git a/pandas/tests/groupby/test_allowlist.py b/pandas/tests/groupby/test_allowlist.py index 0fd66cc047017..21e36c73cfa41 100644 --- a/pandas/tests/groupby/test_allowlist.py +++ b/pandas/tests/groupby/test_allowlist.py @@ -2,14 +2,12 @@ test methods relating to generic function evaluation the so-called white/black lists """ - from string import ascii_lowercase import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, date_range from pandas.core.groupby.base import ( groupby_other_methods, reduction_kernels, diff --git a/pandas/tests/groupby/test_apply.py b/pandas/tests/groupby/test_apply.py index 1945647ced08f..9d7c584cc7e0c 100644 --- a/pandas/tests/groupby/test_apply.py +++ b/pandas/tests/groupby/test_apply.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, bdate_range -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, bdate_range def test_apply_issues(): diff --git a/pandas/tests/groupby/test_apply_mutate.py b/pandas/tests/groupby/test_apply_mutate.py index 529f76bf692ce..71d5399838be0 100644 --- a/pandas/tests/groupby/test_apply_mutate.py +++ b/pandas/tests/groupby/test_apply_mutate.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_mutate_groups(): diff --git a/pandas/tests/groupby/test_bin_groupby.py b/pandas/tests/groupby/test_bin_groupby.py index f20eed4575e91..1a518afc2e2da 100644 --- a/pandas/tests/groupby/test_bin_groupby.py +++ b/pandas/tests/groupby/test_bin_groupby.py @@ -6,8 +6,7 @@ from pandas.core.dtypes.common import ensure_int64 import pandas as pd -from pandas import Series, isna -import pandas._testing as tm +from pandas import Series, _testing as tm, isna def test_series_grouper(): diff --git a/pandas/tests/groupby/test_categorical.py b/pandas/tests/groupby/test_categorical.py index 4de61f719dfbb..2e9882cca2548 100644 --- a/pandas/tests/groupby/test_categorical.py +++ b/pandas/tests/groupby/test_categorical.py @@ -14,9 +14,9 @@ MultiIndex, Series, _np_version_under1p17, + _testing as tm, qcut, ) -import pandas._testing as tm def cartesian_product_for_groupers(result, args, names): diff --git a/pandas/tests/groupby/test_counting.py b/pandas/tests/groupby/test_counting.py index 997d9b006c802..c239551fc49d2 100644 --- a/pandas/tests/groupby/test_counting.py +++ b/pandas/tests/groupby/test_counting.py @@ -13,9 +13,9 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm class TestCounting: diff --git a/pandas/tests/groupby/test_filters.py b/pandas/tests/groupby/test_filters.py index c16ad812eb634..410cbcf6f27df 100644 --- a/pandas/tests/groupby/test_filters.py +++ b/pandas/tests/groupby/test_filters.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm def test_filter_series(): diff --git a/pandas/tests/groupby/test_function.py b/pandas/tests/groupby/test_function.py index 6f19ec40c2520..6c8ccad00383d 100644 --- a/pandas/tests/groupby/test_function.py +++ b/pandas/tests/groupby/test_function.py @@ -7,9 +7,17 @@ from pandas.errors import UnsupportedFunctionCall import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, date_range, isna -import pandas._testing as tm -import pandas.core.nanops as nanops +from pandas import ( + DataFrame, + Index, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, + isna, +) +from pandas.core import nanops as nanops from pandas.util import _test_decorators as td diff --git a/pandas/tests/groupby/test_groupby.py b/pandas/tests/groupby/test_groupby.py index 0d040b8e6955a..6493d35e27bd1 100644 --- a/pandas/tests/groupby/test_groupby.py +++ b/pandas/tests/groupby/test_groupby.py @@ -8,10 +8,18 @@ from pandas.errors import PerformanceWarning import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, date_range, read_csv -import pandas._testing as tm +from pandas import ( + DataFrame, + Index, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, + read_csv, +) +from pandas.core import common as com from pandas.core.base import SpecificationError -import pandas.core.common as com def test_repr(): diff --git a/pandas/tests/groupby/test_groupby_dropna.py b/pandas/tests/groupby/test_groupby_dropna.py index 1a525d306e9f5..b25c7bfcaf84d 100644 --- a/pandas/tests/groupby/test_groupby_dropna.py +++ b/pandas/tests/groupby/test_groupby_dropna.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas.testing as tm +from pandas import testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/groupby/test_groupby_subclass.py b/pandas/tests/groupby/test_groupby_subclass.py index 7271911c5f80f..4acfc0a8fcab0 100644 --- a/pandas/tests/groupby/test_groupby_subclass.py +++ b/pandas/tests/groupby/test_groupby_subclass.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/groupby/test_grouping.py b/pandas/tests/groupby/test_grouping.py index efcd22f9c0c82..350fc7dbea375 100644 --- a/pandas/tests/groupby/test_grouping.py +++ b/pandas/tests/groupby/test_grouping.py @@ -1,5 +1,4 @@ """ test where we are determining what we are grouping, or getting groups """ - import numpy as np import pytest @@ -11,9 +10,9 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm from pandas.core.groupby.grouper import Grouping # selection diff --git a/pandas/tests/groupby/test_index_as_string.py b/pandas/tests/groupby/test_index_as_string.py index 971a447b84cae..54183ac036861 100644 --- a/pandas/tests/groupby/test_index_as_string.py +++ b/pandas/tests/groupby/test_index_as_string.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture(params=[["inner"], ["inner", "outer"]]) diff --git a/pandas/tests/groupby/test_nth.py b/pandas/tests/groupby/test_nth.py index 0cbfbad85a8b6..f951b373fb5ec 100644 --- a/pandas/tests/groupby/test_nth.py +++ b/pandas/tests/groupby/test_nth.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, isna -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, _testing as tm, isna def test_first_last_nth(df): diff --git a/pandas/tests/groupby/test_nunique.py b/pandas/tests/groupby/test_nunique.py index 1475b1ce2907c..bcea4ce729d97 100644 --- a/pandas/tests/groupby/test_nunique.py +++ b/pandas/tests/groupby/test_nunique.py @@ -5,8 +5,15 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, NaT, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + MultiIndex, + NaT, + Series, + Timestamp, + _testing as tm, + date_range, +) @pytest.mark.slow diff --git a/pandas/tests/groupby/test_pipe.py b/pandas/tests/groupby/test_pipe.py index d2ab016f608fa..ed0c8746cf3a6 100644 --- a/pandas/tests/groupby/test_pipe.py +++ b/pandas/tests/groupby/test_pipe.py @@ -1,8 +1,7 @@ import numpy as np import pandas as pd -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm def test_pipe(): diff --git a/pandas/tests/groupby/test_quantile.py b/pandas/tests/groupby/test_quantile.py index 8cfd8035502c3..78a9b61dd1024 100644 --- a/pandas/tests/groupby/test_quantile.py +++ b/pandas/tests/groupby/test_quantile.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/groupby/test_rank.py b/pandas/tests/groupby/test_rank.py index 3461bf6e10662..2a3197b74f8b6 100644 --- a/pandas/tests/groupby/test_rank.py +++ b/pandas/tests/groupby/test_rank.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, concat -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, concat from pandas.core.base import DataError diff --git a/pandas/tests/groupby/test_sample.py b/pandas/tests/groupby/test_sample.py index 412e3e8f732de..af30d583ec9ea 100644 --- a/pandas/tests/groupby/test_sample.py +++ b/pandas/tests/groupby/test_sample.py @@ -1,7 +1,6 @@ import pytest -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm @pytest.mark.parametrize("n, frac", [(2, None), (None, 0.2)]) diff --git a/pandas/tests/groupby/test_size.py b/pandas/tests/groupby/test_size.py index 9cff8b966dad0..ebeab910fb45e 100644 --- a/pandas/tests/groupby/test_size.py +++ b/pandas/tests/groupby/test_size.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, PeriodIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, PeriodIndex, Series, _testing as tm @pytest.mark.parametrize("by", ["A", "B", ["A", "B"]]) diff --git a/pandas/tests/groupby/test_timegrouper.py b/pandas/tests/groupby/test_timegrouper.py index 84fd7a1bdfb05..1e5aff2c38974 100644 --- a/pandas/tests/groupby/test_timegrouper.py +++ b/pandas/tests/groupby/test_timegrouper.py @@ -1,5 +1,4 @@ """ test with the TimeGrouper / grouping with datetimes """ - from datetime import datetime from io import StringIO @@ -15,10 +14,10 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, offsets, ) -import pandas._testing as tm from pandas.core.groupby.grouper import Grouper from pandas.core.groupby.ops import BinGrouper diff --git a/pandas/tests/groupby/test_value_counts.py b/pandas/tests/groupby/test_value_counts.py index c86cb4532bc26..c2f3d2ad05076 100644 --- a/pandas/tests/groupby/test_value_counts.py +++ b/pandas/tests/groupby/test_value_counts.py @@ -3,14 +3,20 @@ with different size combinations. This is to ensure stability of the sorting and proper parameter handling """ - from itertools import product import numpy as np import pytest -from pandas import DataFrame, Grouper, MultiIndex, Series, date_range, to_datetime -import pandas._testing as tm +from pandas import ( + DataFrame, + Grouper, + MultiIndex, + Series, + _testing as tm, + date_range, + to_datetime, +) # our starting frame diff --git a/pandas/tests/groupby/transform/test_numba.py b/pandas/tests/groupby/transform/test_numba.py index 9a4015ac983c5..de7a1b2844b7c 100644 --- a/pandas/tests/groupby/transform/test_numba.py +++ b/pandas/tests/groupby/transform/test_numba.py @@ -1,11 +1,10 @@ import pytest from pandas.errors import NumbaUtilError -import pandas.util._test_decorators as td -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.core.util.numba_ import NUMBA_FUNC_CACHE +from pandas.util import _test_decorators as td @td.skip_if_no("numba", "0.46.0") diff --git a/pandas/tests/groupby/transform/test_transform.py b/pandas/tests/groupby/transform/test_transform.py index cdaf27e214d80..d028775a22144 100644 --- a/pandas/tests/groupby/transform/test_transform.py +++ b/pandas/tests/groupby/transform/test_transform.py @@ -15,10 +15,10 @@ MultiIndex, Series, Timestamp, + _testing as tm, concat, date_range, ) -import pandas._testing as tm from pandas.core.groupby.groupby import DataError diff --git a/pandas/tests/indexes/base_class/test_reshape.py b/pandas/tests/indexes/base_class/test_reshape.py index 61826f2403a4b..aaba26686cd85 100644 --- a/pandas/tests/indexes/base_class/test_reshape.py +++ b/pandas/tests/indexes/base_class/test_reshape.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Index -import pandas._testing as tm +from pandas import Index, _testing as tm class TestReshape: diff --git a/pandas/tests/indexes/base_class/test_setops.py b/pandas/tests/indexes/base_class/test_setops.py index 77b5e2780464d..682b1571378cc 100644 --- a/pandas/tests/indexes/base_class/test_setops.py +++ b/pandas/tests/indexes/base_class/test_setops.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm from pandas.core.algorithms import safe_sort diff --git a/pandas/tests/indexes/categorical/test_astype.py b/pandas/tests/indexes/categorical/test_astype.py index a4a0cb1978325..b85194631a0e1 100644 --- a/pandas/tests/indexes/categorical/test_astype.py +++ b/pandas/tests/indexes/categorical/test_astype.py @@ -1,8 +1,14 @@ import numpy as np import pytest -from pandas import Categorical, CategoricalDtype, CategoricalIndex, Index, IntervalIndex -import pandas._testing as tm +from pandas import ( + Categorical, + CategoricalDtype, + CategoricalIndex, + Index, + IntervalIndex, + _testing as tm, +) class TestAstype: diff --git a/pandas/tests/indexes/categorical/test_category.py b/pandas/tests/indexes/categorical/test_category.py index 7f30a77872bc1..13ede2e47127a 100644 --- a/pandas/tests/indexes/categorical/test_category.py +++ b/pandas/tests/indexes/categorical/test_category.py @@ -4,8 +4,7 @@ from pandas._libs import index as libindex import pandas as pd -from pandas import Categorical -import pandas._testing as tm +from pandas import Categorical, _testing as tm from pandas.core.indexes.api import CategoricalIndex, Index from ..common import Base diff --git a/pandas/tests/indexes/categorical/test_constructors.py b/pandas/tests/indexes/categorical/test_constructors.py index ee3f85da22781..81e24ba075047 100644 --- a/pandas/tests/indexes/categorical/test_constructors.py +++ b/pandas/tests/indexes/categorical/test_constructors.py @@ -1,8 +1,13 @@ import numpy as np import pytest -from pandas import Categorical, CategoricalDtype, CategoricalIndex, Index -import pandas._testing as tm +from pandas import ( + Categorical, + CategoricalDtype, + CategoricalIndex, + Index, + _testing as tm, +) class TestCategoricalIndexConstructors: diff --git a/pandas/tests/indexes/categorical/test_fillna.py b/pandas/tests/indexes/categorical/test_fillna.py index 0d878249d3800..29d6d2ae63375 100644 --- a/pandas/tests/indexes/categorical/test_fillna.py +++ b/pandas/tests/indexes/categorical/test_fillna.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import CategoricalIndex -import pandas._testing as tm +from pandas import CategoricalIndex, _testing as tm class TestFillNA: diff --git a/pandas/tests/indexes/categorical/test_formats.py b/pandas/tests/indexes/categorical/test_formats.py index a5607224f6448..4929eaeb60f93 100644 --- a/pandas/tests/indexes/categorical/test_formats.py +++ b/pandas/tests/indexes/categorical/test_formats.py @@ -1,7 +1,7 @@ """ Tests for CategoricalIndex.__repr__ and related methods. """ -import pandas._config.config as cf +from pandas._config import config as cf import pandas as pd diff --git a/pandas/tests/indexes/categorical/test_indexing.py b/pandas/tests/indexes/categorical/test_indexing.py index 9cf901c0797d8..236a2caff8bbd 100644 --- a/pandas/tests/indexes/categorical/test_indexing.py +++ b/pandas/tests/indexes/categorical/test_indexing.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import CategoricalIndex, Index, IntervalIndex -import pandas._testing as tm +from pandas import CategoricalIndex, Index, IntervalIndex, _testing as tm class TestTake: diff --git a/pandas/tests/indexes/categorical/test_map.py b/pandas/tests/indexes/categorical/test_map.py index 6cef555275444..7993a08f02ded 100644 --- a/pandas/tests/indexes/categorical/test_map.py +++ b/pandas/tests/indexes/categorical/test_map.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import CategoricalIndex, Index -import pandas._testing as tm +from pandas import CategoricalIndex, Index, _testing as tm class TestMap: diff --git a/pandas/tests/indexes/categorical/test_reindex.py b/pandas/tests/indexes/categorical/test_reindex.py index f59ddc42ce4e4..f6ff124564877 100644 --- a/pandas/tests/indexes/categorical/test_reindex.py +++ b/pandas/tests/indexes/categorical/test_reindex.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Categorical, CategoricalIndex, Index -import pandas._testing as tm +from pandas import Categorical, CategoricalIndex, Index, _testing as tm class TestReindex: diff --git a/pandas/tests/indexes/common.py b/pandas/tests/indexes/common.py index c8b780455f862..451d84c05e917 100644 --- a/pandas/tests/indexes/common.py +++ b/pandas/tests/indexes/common.py @@ -23,9 +23,9 @@ Series, TimedeltaIndex, UInt64Index, + _testing as tm, isna, ) -import pandas._testing as tm from pandas.core.indexes.datetimelike import DatetimeIndexOpsMixin diff --git a/pandas/tests/indexes/datetimelike.py b/pandas/tests/indexes/datetimelike.py index ac3320c6f9fa0..fc36e4b5ba85c 100644 --- a/pandas/tests/indexes/datetimelike.py +++ b/pandas/tests/indexes/datetimelike.py @@ -3,7 +3,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from .common import Base diff --git a/pandas/tests/indexes/datetimes/test_astype.py b/pandas/tests/indexes/datetimes/test_astype.py index 3e7e76bba0dde..a2869df907500 100644 --- a/pandas/tests/indexes/datetimes/test_astype.py +++ b/pandas/tests/indexes/datetimes/test_astype.py @@ -13,9 +13,9 @@ NaT, PeriodIndex, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm class TestDatetimeIndex: diff --git a/pandas/tests/indexes/datetimes/test_constructors.py b/pandas/tests/indexes/datetimes/test_constructors.py index c150e7901c86a..91aa8d8edd671 100644 --- a/pandas/tests/indexes/datetimes/test_constructors.py +++ b/pandas/tests/indexes/datetimes/test_constructors.py @@ -10,8 +10,15 @@ from pandas._libs.tslibs import OutOfBoundsDatetime, conversion import pandas as pd -from pandas import DatetimeIndex, Index, Timestamp, date_range, offsets, to_datetime -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Index, + Timestamp, + _testing as tm, + date_range, + offsets, + to_datetime, +) from pandas.core.arrays import DatetimeArray, period_array diff --git a/pandas/tests/indexes/datetimes/test_date_range.py b/pandas/tests/indexes/datetimes/test_date_range.py index 9d867df147096..2020157604039 100644 --- a/pandas/tests/indexes/datetimes/test_date_range.py +++ b/pandas/tests/indexes/datetimes/test_date_range.py @@ -1,7 +1,6 @@ """ test date_range, bdate_range construction from the convenience range functions """ - from datetime import datetime, time, timedelta import numpy as np @@ -12,12 +11,18 @@ from pandas._libs.tslibs import timezones from pandas._libs.tslibs.offsets import BDay, CDay, DateOffset, MonthEnd, prefix_mapping from pandas.errors import OutOfBoundsDatetime -import pandas.util._test_decorators as td import pandas as pd -from pandas import DatetimeIndex, Timestamp, bdate_range, date_range, offsets -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Timestamp, + _testing as tm, + bdate_range, + date_range, + offsets, +) from pandas.core.arrays.datetimes import generate_range +from pandas.util import _test_decorators as td START, END = datetime(2009, 1, 1), datetime(2010, 1, 1) diff --git a/pandas/tests/indexes/datetimes/test_datetime.py b/pandas/tests/indexes/datetimes/test_datetime.py index ec4162f87010f..13678eb9ff62f 100644 --- a/pandas/tests/indexes/datetimes/test_datetime.py +++ b/pandas/tests/indexes/datetimes/test_datetime.py @@ -5,8 +5,15 @@ import pytest import pandas as pd -from pandas import DataFrame, DatetimeIndex, Index, Timestamp, date_range, offsets -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Index, + Timestamp, + _testing as tm, + date_range, + offsets, +) randn = np.random.randn @@ -59,6 +66,7 @@ def test_reindex_with_same_tz(self): def test_time_loc(self): # GH8667 from datetime import time + from pandas._libs.index import _SIZE_CUTOFF ns = _SIZE_CUTOFF + np.array([-100, 100], dtype=np.int64) diff --git a/pandas/tests/indexes/datetimes/test_datetimelike.py b/pandas/tests/indexes/datetimes/test_datetimelike.py index 7345ae3032463..e472d355c3440 100644 --- a/pandas/tests/indexes/datetimes/test_datetimelike.py +++ b/pandas/tests/indexes/datetimes/test_datetimelike.py @@ -1,8 +1,7 @@ """ generic tests from the Datetimelike class """ import pytest -from pandas import DatetimeIndex, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, _testing as tm, date_range from ..datetimelike import DatetimeLike diff --git a/pandas/tests/indexes/datetimes/test_delete.py b/pandas/tests/indexes/datetimes/test_delete.py index 4fbb440bc89e5..a5ba08ae9eb99 100644 --- a/pandas/tests/indexes/datetimes/test_delete.py +++ b/pandas/tests/indexes/datetimes/test_delete.py @@ -1,7 +1,6 @@ import pytest -from pandas import DatetimeIndex, Series, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, Series, _testing as tm, date_range class TestDelete: diff --git a/pandas/tests/indexes/datetimes/test_fillna.py b/pandas/tests/indexes/datetimes/test_fillna.py index 5fbe60bb0c50f..d2d572c72a119 100644 --- a/pandas/tests/indexes/datetimes/test_fillna.py +++ b/pandas/tests/indexes/datetimes/test_fillna.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestDatetimeIndexFillNA: diff --git a/pandas/tests/indexes/datetimes/test_formats.py b/pandas/tests/indexes/datetimes/test_formats.py index f34019e06fd5f..53c8423541594 100644 --- a/pandas/tests/indexes/datetimes/test_formats.py +++ b/pandas/tests/indexes/datetimes/test_formats.py @@ -6,8 +6,7 @@ import pytz import pandas as pd -from pandas import DatetimeIndex, Series -import pandas._testing as tm +from pandas import DatetimeIndex, Series, _testing as tm def test_to_native_types(): diff --git a/pandas/tests/indexes/datetimes/test_indexing.py b/pandas/tests/indexes/datetimes/test_indexing.py index 5d2c6daba3f57..c6fa64168ea79 100644 --- a/pandas/tests/indexes/datetimes/test_indexing.py +++ b/pandas/tests/indexes/datetimes/test_indexing.py @@ -6,8 +6,7 @@ from pandas.errors import InvalidIndexError import pandas as pd -from pandas import DatetimeIndex, Index, Timestamp, date_range, notna -import pandas._testing as tm +from pandas import DatetimeIndex, Index, Timestamp, _testing as tm, date_range, notna from pandas.tseries.offsets import BDay, CDay diff --git a/pandas/tests/indexes/datetimes/test_insert.py b/pandas/tests/indexes/datetimes/test_insert.py index b4f6cc3798f4f..c460e684a12bc 100644 --- a/pandas/tests/indexes/datetimes/test_insert.py +++ b/pandas/tests/indexes/datetimes/test_insert.py @@ -4,8 +4,7 @@ import pytest import pytz -from pandas import NA, DatetimeIndex, Index, NaT, Timestamp, date_range -import pandas._testing as tm +from pandas import NA, DatetimeIndex, Index, NaT, Timestamp, _testing as tm, date_range class TestInsert: diff --git a/pandas/tests/indexes/datetimes/test_join.py b/pandas/tests/indexes/datetimes/test_join.py index 9a9c94fa19e6d..cb138dcdcb642 100644 --- a/pandas/tests/indexes/datetimes/test_join.py +++ b/pandas/tests/indexes/datetimes/test_join.py @@ -3,8 +3,14 @@ import numpy as np import pytest -from pandas import DatetimeIndex, Index, Timestamp, date_range, to_datetime -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Index, + Timestamp, + _testing as tm, + date_range, + to_datetime, +) from pandas.tseries.offsets import BDay, BMonthEnd diff --git a/pandas/tests/indexes/datetimes/test_map.py b/pandas/tests/indexes/datetimes/test_map.py index 2644ad7616b51..25dfb90d99ba7 100644 --- a/pandas/tests/indexes/datetimes/test_map.py +++ b/pandas/tests/indexes/datetimes/test_map.py @@ -1,7 +1,6 @@ import pytest -from pandas import DatetimeIndex, Index, MultiIndex, Period, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, Index, MultiIndex, Period, _testing as tm, date_range class TestMap: diff --git a/pandas/tests/indexes/datetimes/test_misc.py b/pandas/tests/indexes/datetimes/test_misc.py index 51841727d510b..e0f61dfadb415 100644 --- a/pandas/tests/indexes/datetimes/test_misc.py +++ b/pandas/tests/indexes/datetimes/test_misc.py @@ -7,8 +7,7 @@ import pytest import pandas as pd -from pandas import DatetimeIndex, Index, Timestamp, date_range, offsets -import pandas._testing as tm +from pandas import DatetimeIndex, Index, Timestamp, _testing as tm, date_range, offsets class TestTimeSeries: diff --git a/pandas/tests/indexes/datetimes/test_ops.py b/pandas/tests/indexes/datetimes/test_ops.py index ea6381547009c..96180096b6362 100644 --- a/pandas/tests/indexes/datetimes/test_ops.py +++ b/pandas/tests/indexes/datetimes/test_ops.py @@ -10,10 +10,10 @@ Index, Series, Timestamp, + _testing as tm, bdate_range, date_range, ) -import pandas._testing as tm from pandas.tseries.offsets import BDay, Day, Hour diff --git a/pandas/tests/indexes/datetimes/test_partial_slicing.py b/pandas/tests/indexes/datetimes/test_partial_slicing.py index 635470b930252..db7ad158d963d 100644 --- a/pandas/tests/indexes/datetimes/test_partial_slicing.py +++ b/pandas/tests/indexes/datetimes/test_partial_slicing.py @@ -1,5 +1,4 @@ """ test partial slicing on Series/Frame """ - from datetime import datetime import operator @@ -13,9 +12,9 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm from pandas.core.indexing import IndexingError diff --git a/pandas/tests/indexes/datetimes/test_pickle.py b/pandas/tests/indexes/datetimes/test_pickle.py index bb08d4c66cb3c..6d2fb1dfbaf2c 100644 --- a/pandas/tests/indexes/datetimes/test_pickle.py +++ b/pandas/tests/indexes/datetimes/test_pickle.py @@ -1,7 +1,6 @@ import pytest -from pandas import NaT, date_range, to_datetime -import pandas._testing as tm +from pandas import NaT, _testing as tm, date_range, to_datetime class TestPickle: diff --git a/pandas/tests/indexes/datetimes/test_scalar_compat.py b/pandas/tests/indexes/datetimes/test_scalar_compat.py index 0d39e034905d2..8aab471e58460 100644 --- a/pandas/tests/indexes/datetimes/test_scalar_compat.py +++ b/pandas/tests/indexes/datetimes/test_scalar_compat.py @@ -10,8 +10,7 @@ from pandas._libs.tslibs.offsets import INVALID_FREQ_ERR_MSG import pandas as pd -from pandas import DatetimeIndex, Timestamp, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, Timestamp, _testing as tm, date_range class TestDatetimeIndexOps: diff --git a/pandas/tests/indexes/datetimes/test_setops.py b/pandas/tests/indexes/datetimes/test_setops.py index 6670b079ddd29..5af9e6583b3a7 100644 --- a/pandas/tests/indexes/datetimes/test_setops.py +++ b/pandas/tests/indexes/datetimes/test_setops.py @@ -3,8 +3,6 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd from pandas import ( DataFrame, @@ -12,10 +10,11 @@ Index, Int64Index, Series, + _testing as tm, bdate_range, date_range, ) -import pandas._testing as tm +from pandas.util import _test_decorators as td from pandas.tseries.offsets import BMonthEnd, Minute, MonthEnd diff --git a/pandas/tests/indexes/datetimes/test_shift.py b/pandas/tests/indexes/datetimes/test_shift.py index 8724bfeb05c4d..5ca039d2a98d8 100644 --- a/pandas/tests/indexes/datetimes/test_shift.py +++ b/pandas/tests/indexes/datetimes/test_shift.py @@ -6,8 +6,7 @@ from pandas.errors import NullFrequencyError import pandas as pd -from pandas import DatetimeIndex, Series, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, Series, _testing as tm, date_range START, END = datetime(2009, 1, 1), datetime(2010, 1, 1) diff --git a/pandas/tests/indexes/datetimes/test_snap.py b/pandas/tests/indexes/datetimes/test_snap.py index 8baea9fe8341f..957b800450aa9 100644 --- a/pandas/tests/indexes/datetimes/test_snap.py +++ b/pandas/tests/indexes/datetimes/test_snap.py @@ -1,7 +1,6 @@ import pytest -from pandas import DatetimeIndex, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, _testing as tm, date_range @pytest.mark.filterwarnings("ignore::DeprecationWarning") diff --git a/pandas/tests/indexes/datetimes/test_timezones.py b/pandas/tests/indexes/datetimes/test_timezones.py index ea68e8759c123..ac5508d9270f8 100644 --- a/pandas/tests/indexes/datetimes/test_timezones.py +++ b/pandas/tests/indexes/datetimes/test_timezones.py @@ -10,19 +10,19 @@ import pytz from pandas._libs.tslibs import conversion, timezones -import pandas.util._test_decorators as td import pandas as pd from pandas import ( DatetimeIndex, Index, Timestamp, + _testing as tm, bdate_range, date_range, isna, to_datetime, ) -import pandas._testing as tm +from pandas.util import _test_decorators as td class FixedOffset(tzinfo): diff --git a/pandas/tests/indexes/datetimes/test_to_period.py b/pandas/tests/indexes/datetimes/test_to_period.py index 51cc6af2eed08..3fe305e08646c 100644 --- a/pandas/tests/indexes/datetimes/test_to_period.py +++ b/pandas/tests/indexes/datetimes/test_to_period.py @@ -13,10 +13,10 @@ Period, PeriodIndex, Timestamp, + _testing as tm, date_range, period_range, ) -import pandas._testing as tm class TestToPeriod: diff --git a/pandas/tests/indexes/interval/test_astype.py b/pandas/tests/indexes/interval/test_astype.py index c94af6c0d533e..67526570bf583 100644 --- a/pandas/tests/indexes/interval/test_astype.py +++ b/pandas/tests/indexes/interval/test_astype.py @@ -10,9 +10,9 @@ NaT, Timedelta, Timestamp, + _testing as tm, interval_range, ) -import pandas._testing as tm class Base: diff --git a/pandas/tests/indexes/interval/test_base.py b/pandas/tests/indexes/interval/test_base.py index c316655fbda8a..f8a78ba016d29 100644 --- a/pandas/tests/indexes/interval/test_base.py +++ b/pandas/tests/indexes/interval/test_base.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import IntervalIndex, Series, date_range -import pandas._testing as tm +from pandas import IntervalIndex, Series, _testing as tm, date_range from pandas.tests.indexes.common import Base diff --git a/pandas/tests/indexes/interval/test_constructors.py b/pandas/tests/indexes/interval/test_constructors.py index fa881df8139c6..7b201deb52347 100644 --- a/pandas/tests/indexes/interval/test_constructors.py +++ b/pandas/tests/indexes/interval/test_constructors.py @@ -14,14 +14,14 @@ Int64Index, Interval, IntervalIndex, + _testing as tm, date_range, notna, period_range, timedelta_range, ) -import pandas._testing as tm +from pandas.core import common as com from pandas.core.arrays import IntervalArray -import pandas.core.common as com @pytest.fixture(params=[None, "foo"]) diff --git a/pandas/tests/indexes/interval/test_formats.py b/pandas/tests/indexes/interval/test_formats.py index 7acf5c1e0906c..e57a3c1a08be7 100644 --- a/pandas/tests/indexes/interval/test_formats.py +++ b/pandas/tests/indexes/interval/test_formats.py @@ -1,8 +1,14 @@ import numpy as np import pytest -from pandas import DataFrame, IntervalIndex, Series, Timedelta, Timestamp -import pandas._testing as tm +from pandas import ( + DataFrame, + IntervalIndex, + Series, + Timedelta, + Timestamp, + _testing as tm, +) class TestIntervalIndexRendering: diff --git a/pandas/tests/indexes/interval/test_indexing.py b/pandas/tests/indexes/interval/test_indexing.py index 3abc6e348748a..b37a339cc7312 100644 --- a/pandas/tests/indexes/interval/test_indexing.py +++ b/pandas/tests/indexes/interval/test_indexing.py @@ -10,10 +10,10 @@ Interval, IntervalIndex, Timedelta, + _testing as tm, date_range, timedelta_range, ) -import pandas._testing as tm class TestGetLoc: diff --git a/pandas/tests/indexes/interval/test_interval.py b/pandas/tests/indexes/interval/test_interval.py index 2755b186f3eae..f4361b417f81b 100644 --- a/pandas/tests/indexes/interval/test_interval.py +++ b/pandas/tests/indexes/interval/test_interval.py @@ -13,14 +13,14 @@ IntervalIndex, Timedelta, Timestamp, + _testing as tm, date_range, interval_range, isna, notna, timedelta_range, ) -import pandas._testing as tm -import pandas.core.common as com +from pandas.core import common as com @pytest.fixture(scope="class", params=[None, "foo"]) diff --git a/pandas/tests/indexes/interval/test_interval_range.py b/pandas/tests/indexes/interval/test_interval_range.py index 2f28c33a3bbc6..7d60b3c3c6cdd 100644 --- a/pandas/tests/indexes/interval/test_interval_range.py +++ b/pandas/tests/indexes/interval/test_interval_range.py @@ -11,11 +11,11 @@ IntervalIndex, Timedelta, Timestamp, + _testing as tm, date_range, interval_range, timedelta_range, ) -import pandas._testing as tm from pandas.tseries.offsets import Day diff --git a/pandas/tests/indexes/interval/test_interval_tree.py b/pandas/tests/indexes/interval/test_interval_tree.py index 476ec1dd10b4b..8200cf57a627e 100644 --- a/pandas/tests/indexes/interval/test_interval_tree.py +++ b/pandas/tests/indexes/interval/test_interval_tree.py @@ -5,8 +5,7 @@ from pandas._libs.interval import IntervalTree -from pandas import compat -import pandas._testing as tm +from pandas import _testing as tm, compat def skipif_32bit(param): diff --git a/pandas/tests/indexes/interval/test_setops.py b/pandas/tests/indexes/interval/test_setops.py index e3e5070064aff..1bee43720b239 100644 --- a/pandas/tests/indexes/interval/test_setops.py +++ b/pandas/tests/indexes/interval/test_setops.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Index, IntervalIndex, Timestamp, interval_range -import pandas._testing as tm +from pandas import Index, IntervalIndex, Timestamp, _testing as tm, interval_range @pytest.fixture(scope="class", params=[None, "foo"]) diff --git a/pandas/tests/indexes/multi/test_analytics.py b/pandas/tests/indexes/multi/test_analytics.py index 9e4e73e793bac..b46d5684faf36 100644 --- a/pandas/tests/indexes/multi/test_analytics.py +++ b/pandas/tests/indexes/multi/test_analytics.py @@ -4,8 +4,7 @@ from pandas.compat.numpy import _np_version_under1p17 import pandas as pd -from pandas import Index, MultiIndex, date_range, period_range -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm, date_range, period_range def test_shift(idx): diff --git a/pandas/tests/indexes/multi/test_astype.py b/pandas/tests/indexes/multi/test_astype.py index 29908537fbe59..17986a9100fac 100644 --- a/pandas/tests/indexes/multi/test_astype.py +++ b/pandas/tests/indexes/multi/test_astype.py @@ -3,7 +3,7 @@ from pandas.core.dtypes.dtypes import CategoricalDtype -import pandas._testing as tm +from pandas import _testing as tm def test_astype(idx): diff --git a/pandas/tests/indexes/multi/test_compat.py b/pandas/tests/indexes/multi/test_compat.py index d1f66af4a8e83..9c18b25b7e71f 100644 --- a/pandas/tests/indexes/multi/test_compat.py +++ b/pandas/tests/indexes/multi/test_compat.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import MultiIndex -import pandas._testing as tm +from pandas import MultiIndex, _testing as tm def test_numeric_compat(idx): diff --git a/pandas/tests/indexes/multi/test_constructors.py b/pandas/tests/indexes/multi/test_constructors.py index 1157c7f8bb962..17d3211ef25c8 100644 --- a/pandas/tests/indexes/multi/test_constructors.py +++ b/pandas/tests/indexes/multi/test_constructors.py @@ -9,8 +9,7 @@ from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike import pandas as pd -from pandas import Index, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import Index, MultiIndex, Series, _testing as tm, date_range def test_constructor_single_level(): diff --git a/pandas/tests/indexes/multi/test_conversion.py b/pandas/tests/indexes/multi/test_conversion.py index 3519c5d0d5a9a..ae27ab1e4c428 100644 --- a/pandas/tests/indexes/multi/test_conversion.py +++ b/pandas/tests/indexes/multi/test_conversion.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, _testing as tm def test_to_numpy(idx): diff --git a/pandas/tests/indexes/multi/test_copy.py b/pandas/tests/indexes/multi/test_copy.py index 67b815ecba3b8..c9cca09ebc883 100644 --- a/pandas/tests/indexes/multi/test_copy.py +++ b/pandas/tests/indexes/multi/test_copy.py @@ -2,8 +2,7 @@ import pytest -from pandas import MultiIndex -import pandas._testing as tm +from pandas import MultiIndex, _testing as tm def assert_multiindex_copied(copy, original): diff --git a/pandas/tests/indexes/multi/test_drop.py b/pandas/tests/indexes/multi/test_drop.py index 6ba565f0406ab..3f925a3076f24 100644 --- a/pandas/tests/indexes/multi/test_drop.py +++ b/pandas/tests/indexes/multi/test_drop.py @@ -4,8 +4,7 @@ from pandas.errors import PerformanceWarning import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm def test_drop(idx): diff --git a/pandas/tests/indexes/multi/test_duplicates.py b/pandas/tests/indexes/multi/test_duplicates.py index e48731b9c8099..ec80ebcf77987 100644 --- a/pandas/tests/indexes/multi/test_duplicates.py +++ b/pandas/tests/indexes/multi/test_duplicates.py @@ -5,8 +5,7 @@ from pandas._libs import hashtable -from pandas import DatetimeIndex, MultiIndex -import pandas._testing as tm +from pandas import DatetimeIndex, MultiIndex, _testing as tm @pytest.mark.parametrize("names", [None, ["first", "second"]]) diff --git a/pandas/tests/indexes/multi/test_equivalence.py b/pandas/tests/indexes/multi/test_equivalence.py index 063ede028add7..f4e57e51a33bb 100644 --- a/pandas/tests/indexes/multi/test_equivalence.py +++ b/pandas/tests/indexes/multi/test_equivalence.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, MultiIndex, Series -import pandas._testing as tm +from pandas import Index, MultiIndex, Series, _testing as tm def test_equals(idx): diff --git a/pandas/tests/indexes/multi/test_formats.py b/pandas/tests/indexes/multi/test_formats.py index 792dcf4c535e3..aa5c691c52da8 100644 --- a/pandas/tests/indexes/multi/test_formats.py +++ b/pandas/tests/indexes/multi/test_formats.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm def test_format(idx): diff --git a/pandas/tests/indexes/multi/test_get_level_values.py b/pandas/tests/indexes/multi/test_get_level_values.py index 985fe5773ceed..ab321c85b9cac 100644 --- a/pandas/tests/indexes/multi/test_get_level_values.py +++ b/pandas/tests/indexes/multi/test_get_level_values.py @@ -1,8 +1,14 @@ import numpy as np import pandas as pd -from pandas import CategoricalIndex, Index, MultiIndex, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + CategoricalIndex, + Index, + MultiIndex, + Timestamp, + _testing as tm, + date_range, +) class TestGetLevelValues: diff --git a/pandas/tests/indexes/multi/test_get_set.py b/pandas/tests/indexes/multi/test_get_set.py index 8a3deca0236e4..a41babceb1d96 100644 --- a/pandas/tests/indexes/multi/test_get_set.py +++ b/pandas/tests/indexes/multi/test_get_set.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import CategoricalIndex, MultiIndex -import pandas._testing as tm +from pandas import CategoricalIndex, MultiIndex, _testing as tm def assert_matching(actual, expected, check_dtype=False): diff --git a/pandas/tests/indexes/multi/test_indexing.py b/pandas/tests/indexes/multi/test_indexing.py index 6b27682ed5674..1dd8a64c957a7 100644 --- a/pandas/tests/indexes/multi/test_indexing.py +++ b/pandas/tests/indexes/multi/test_indexing.py @@ -6,8 +6,7 @@ from pandas.errors import InvalidIndexError import pandas as pd -from pandas import Categorical, Index, MultiIndex, date_range -import pandas._testing as tm +from pandas import Categorical, Index, MultiIndex, _testing as tm, date_range class TestSliceLocs: diff --git a/pandas/tests/indexes/multi/test_integrity.py b/pandas/tests/indexes/multi/test_integrity.py index fd150bb4d57a2..6091d2d0edcd3 100644 --- a/pandas/tests/indexes/multi/test_integrity.py +++ b/pandas/tests/indexes/multi/test_integrity.py @@ -6,8 +6,7 @@ from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike import pandas as pd -from pandas import IntervalIndex, MultiIndex, RangeIndex -import pandas._testing as tm +from pandas import IntervalIndex, MultiIndex, RangeIndex, _testing as tm def test_labels_dtypes(): diff --git a/pandas/tests/indexes/multi/test_isin.py b/pandas/tests/indexes/multi/test_isin.py index 122263e6ec198..57543b878c9b9 100644 --- a/pandas/tests/indexes/multi/test_isin.py +++ b/pandas/tests/indexes/multi/test_isin.py @@ -3,8 +3,7 @@ from pandas.compat import PYPY -from pandas import MultiIndex -import pandas._testing as tm +from pandas import MultiIndex, _testing as tm @pytest.mark.skipif(not PYPY, reason="tuples cmp recursively on PyPy") diff --git a/pandas/tests/indexes/multi/test_join.py b/pandas/tests/indexes/multi/test_join.py index 6be9ec463ce36..61d5222d00ebc 100644 --- a/pandas/tests/indexes/multi/test_join.py +++ b/pandas/tests/indexes/multi/test_join.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/indexes/multi/test_missing.py b/pandas/tests/indexes/multi/test_missing.py index 4c9d518778ceb..126493323d1d6 100644 --- a/pandas/tests/indexes/multi/test_missing.py +++ b/pandas/tests/indexes/multi/test_missing.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import MultiIndex -import pandas._testing as tm +from pandas import MultiIndex, _testing as tm def test_fillna(idx): diff --git a/pandas/tests/indexes/multi/test_names.py b/pandas/tests/indexes/multi/test_names.py index 479b5ef0211a0..bcf1161577b67 100644 --- a/pandas/tests/indexes/multi/test_names.py +++ b/pandas/tests/indexes/multi/test_names.py @@ -1,8 +1,7 @@ import pytest import pandas as pd -from pandas import MultiIndex -import pandas._testing as tm +from pandas import MultiIndex, _testing as tm def check_level_names(index, names): diff --git a/pandas/tests/indexes/multi/test_partial_indexing.py b/pandas/tests/indexes/multi/test_partial_indexing.py index 7dfe0b20a7478..f61a0edbeecc6 100644 --- a/pandas/tests/indexes/multi/test_partial_indexing.py +++ b/pandas/tests/indexes/multi/test_partial_indexing.py @@ -1,7 +1,6 @@ import pytest -from pandas import DataFrame, IndexSlice, MultiIndex, date_range -import pandas._testing as tm +from pandas import DataFrame, IndexSlice, MultiIndex, _testing as tm, date_range @pytest.fixture diff --git a/pandas/tests/indexes/multi/test_reindex.py b/pandas/tests/indexes/multi/test_reindex.py index ceb14aa82a76c..9b6745d188b5b 100644 --- a/pandas/tests/indexes/multi/test_reindex.py +++ b/pandas/tests/indexes/multi/test_reindex.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm def test_reindex(idx): diff --git a/pandas/tests/indexes/multi/test_reshape.py b/pandas/tests/indexes/multi/test_reshape.py index 6d8a396119ef3..42bb6e9cf7516 100644 --- a/pandas/tests/indexes/multi/test_reshape.py +++ b/pandas/tests/indexes/multi/test_reshape.py @@ -5,8 +5,7 @@ import pytz import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm def test_insert(idx): diff --git a/pandas/tests/indexes/multi/test_setops.py b/pandas/tests/indexes/multi/test_setops.py index d7427ee622977..a27c5e607f347 100644 --- a/pandas/tests/indexes/multi/test_setops.py +++ b/pandas/tests/indexes/multi/test_setops.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import MultiIndex, Series -import pandas._testing as tm +from pandas import MultiIndex, Series, _testing as tm @pytest.mark.parametrize("case", [0.5, "xxx"]) diff --git a/pandas/tests/indexes/multi/test_sorting.py b/pandas/tests/indexes/multi/test_sorting.py index 423bbed831b87..0869be187a410 100644 --- a/pandas/tests/indexes/multi/test_sorting.py +++ b/pandas/tests/indexes/multi/test_sorting.py @@ -6,8 +6,14 @@ from pandas.errors import PerformanceWarning, UnsortedIndexError import pandas as pd -from pandas import CategoricalIndex, DataFrame, Index, MultiIndex, RangeIndex -import pandas._testing as tm +from pandas import ( + CategoricalIndex, + DataFrame, + Index, + MultiIndex, + RangeIndex, + _testing as tm, +) def test_sortlevel(idx): diff --git a/pandas/tests/indexes/multi/test_take.py b/pandas/tests/indexes/multi/test_take.py index f8e7632c91ab2..57a57e1c0c2c2 100644 --- a/pandas/tests/indexes/multi/test_take.py +++ b/pandas/tests/indexes/multi/test_take.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_take(idx): diff --git a/pandas/tests/indexes/numeric/test_astype.py b/pandas/tests/indexes/numeric/test_astype.py index 1771f4336df67..7357fb4bbe92d 100644 --- a/pandas/tests/indexes/numeric/test_astype.py +++ b/pandas/tests/indexes/numeric/test_astype.py @@ -5,8 +5,7 @@ from pandas.core.dtypes.common import pandas_dtype -from pandas import Float64Index, Index, Int64Index -import pandas._testing as tm +from pandas import Float64Index, Index, Int64Index, _testing as tm class TestAstype: diff --git a/pandas/tests/indexes/numeric/test_indexing.py b/pandas/tests/indexes/numeric/test_indexing.py index 473e370c76f8b..7b14a76641552 100644 --- a/pandas/tests/indexes/numeric/test_indexing.py +++ b/pandas/tests/indexes/numeric/test_indexing.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Float64Index, Int64Index, Series, UInt64Index -import pandas._testing as tm +from pandas import Float64Index, Int64Index, Series, UInt64Index, _testing as tm @pytest.fixture diff --git a/pandas/tests/indexes/numeric/test_join.py b/pandas/tests/indexes/numeric/test_join.py index c8dffa411e5fd..5a7cdec71e67e 100644 --- a/pandas/tests/indexes/numeric/test_join.py +++ b/pandas/tests/indexes/numeric/test_join.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Index, Int64Index, UInt64Index -import pandas._testing as tm +from pandas import Index, Int64Index, UInt64Index, _testing as tm class TestJoinInt64Index: diff --git a/pandas/tests/indexes/period/test_asfreq.py b/pandas/tests/indexes/period/test_asfreq.py index 8c04ac1177676..5e473adf85f78 100644 --- a/pandas/tests/indexes/period/test_asfreq.py +++ b/pandas/tests/indexes/period/test_asfreq.py @@ -1,7 +1,6 @@ import pytest -from pandas import PeriodIndex, period_range -import pandas._testing as tm +from pandas import PeriodIndex, _testing as tm, period_range class TestPeriodIndex: diff --git a/pandas/tests/indexes/period/test_astype.py b/pandas/tests/indexes/period/test_astype.py index fa1617bdfaa52..f06131edd5c7f 100644 --- a/pandas/tests/indexes/period/test_astype.py +++ b/pandas/tests/indexes/period/test_astype.py @@ -11,9 +11,9 @@ PeriodIndex, Timedelta, UInt64Index, + _testing as tm, period_range, ) -import pandas._testing as tm class TestPeriodIndexAsType: diff --git a/pandas/tests/indexes/period/test_constructors.py b/pandas/tests/indexes/period/test_constructors.py index f85f37e4127c3..b19f306ac52c7 100644 --- a/pandas/tests/indexes/period/test_constructors.py +++ b/pandas/tests/indexes/period/test_constructors.py @@ -12,11 +12,11 @@ Period, PeriodIndex, Series, + _testing as tm, date_range, offsets, period_range, ) -import pandas._testing as tm from pandas.core.arrays import PeriodArray diff --git a/pandas/tests/indexes/period/test_factorize.py b/pandas/tests/indexes/period/test_factorize.py index 7c9367a1011a2..e945c8384e386 100644 --- a/pandas/tests/indexes/period/test_factorize.py +++ b/pandas/tests/indexes/period/test_factorize.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import PeriodIndex -import pandas._testing as tm +from pandas import PeriodIndex, _testing as tm class TestFactorize: diff --git a/pandas/tests/indexes/period/test_fillna.py b/pandas/tests/indexes/period/test_fillna.py index 602e87333a6c1..9e726a0488f74 100644 --- a/pandas/tests/indexes/period/test_fillna.py +++ b/pandas/tests/indexes/period/test_fillna.py @@ -1,5 +1,4 @@ -from pandas import Index, NaT, Period, PeriodIndex -import pandas._testing as tm +from pandas import Index, NaT, Period, PeriodIndex, _testing as tm class TestFillNA: diff --git a/pandas/tests/indexes/period/test_formats.py b/pandas/tests/indexes/period/test_formats.py index 5db373a9f07ae..590972f96c793 100644 --- a/pandas/tests/indexes/period/test_formats.py +++ b/pandas/tests/indexes/period/test_formats.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import PeriodIndex -import pandas._testing as tm +from pandas import PeriodIndex, _testing as tm def test_to_native_types(): diff --git a/pandas/tests/indexes/period/test_indexing.py b/pandas/tests/indexes/period/test_indexing.py index b61d1d903f89a..d2354af3bf65f 100644 --- a/pandas/tests/indexes/period/test_indexing.py +++ b/pandas/tests/indexes/period/test_indexing.py @@ -15,11 +15,11 @@ PeriodIndex, Series, Timedelta, + _testing as tm, date_range, notna, period_range, ) -import pandas._testing as tm class TestGetItem: diff --git a/pandas/tests/indexes/period/test_join.py b/pandas/tests/indexes/period/test_join.py index 8a68561dd5819..f5acd475ba5c1 100644 --- a/pandas/tests/indexes/period/test_join.py +++ b/pandas/tests/indexes/period/test_join.py @@ -3,8 +3,7 @@ from pandas._libs.tslibs import IncompatibleFrequency -from pandas import Index, PeriodIndex, period_range -import pandas._testing as tm +from pandas import Index, PeriodIndex, _testing as tm, period_range class TestJoin: diff --git a/pandas/tests/indexes/period/test_ops.py b/pandas/tests/indexes/period/test_ops.py index e7dd76584d780..9e86b138f5a88 100644 --- a/pandas/tests/indexes/period/test_ops.py +++ b/pandas/tests/indexes/period/test_ops.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, NaT, PeriodIndex, Series -import pandas._testing as tm +from pandas import Index, NaT, PeriodIndex, Series, _testing as tm class TestPeriodIndexOps: diff --git a/pandas/tests/indexes/period/test_partial_slicing.py b/pandas/tests/indexes/period/test_partial_slicing.py index 660c32d44a7aa..4a0280c06a321 100644 --- a/pandas/tests/indexes/period/test_partial_slicing.py +++ b/pandas/tests/indexes/period/test_partial_slicing.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series, date_range, period_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range, period_range class TestPeriodIndex: diff --git a/pandas/tests/indexes/period/test_period.py b/pandas/tests/indexes/period/test_period.py index 15a88ab3819ce..35f1d0dd0f164 100644 --- a/pandas/tests/indexes/period/test_period.py +++ b/pandas/tests/indexes/period/test_period.py @@ -2,7 +2,6 @@ import pytest from pandas._libs.tslibs.period import IncompatibleFrequency -import pandas.util._test_decorators as td import pandas as pd from pandas import ( @@ -13,11 +12,12 @@ Period, PeriodIndex, Series, + _testing as tm, date_range, offsets, period_range, ) -import pandas._testing as tm +from pandas.util import _test_decorators as td from ..datetimelike import DatetimeLike diff --git a/pandas/tests/indexes/period/test_period_range.py b/pandas/tests/indexes/period/test_period_range.py index 68b48a55957ff..743ad249f14c6 100644 --- a/pandas/tests/indexes/period/test_period_range.py +++ b/pandas/tests/indexes/period/test_period_range.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import NaT, Period, PeriodIndex, date_range, period_range -import pandas._testing as tm +from pandas import NaT, Period, PeriodIndex, _testing as tm, date_range, period_range class TestPeriodRange: diff --git a/pandas/tests/indexes/period/test_scalar_compat.py b/pandas/tests/indexes/period/test_scalar_compat.py index e9d17e7e20778..1e69c83f049ca 100644 --- a/pandas/tests/indexes/period/test_scalar_compat.py +++ b/pandas/tests/indexes/period/test_scalar_compat.py @@ -1,7 +1,5 @@ """Tests for PeriodIndex behaving like a vectorized Period scalar""" - -from pandas import Timedelta, date_range, period_range -import pandas._testing as tm +from pandas import Timedelta, _testing as tm, date_range, period_range class TestPeriodIndexOps: diff --git a/pandas/tests/indexes/period/test_searchsorted.py b/pandas/tests/indexes/period/test_searchsorted.py index f5a2583bf2e10..7b51da718e664 100644 --- a/pandas/tests/indexes/period/test_searchsorted.py +++ b/pandas/tests/indexes/period/test_searchsorted.py @@ -3,8 +3,7 @@ from pandas._libs.tslibs import IncompatibleFrequency -from pandas import NaT, Period, PeriodIndex, Series, array -import pandas._testing as tm +from pandas import NaT, Period, PeriodIndex, Series, _testing as tm, array class TestSearchsorted: diff --git a/pandas/tests/indexes/period/test_setops.py b/pandas/tests/indexes/period/test_setops.py index 71b827d83b836..3815fc97f2b8b 100644 --- a/pandas/tests/indexes/period/test_setops.py +++ b/pandas/tests/indexes/period/test_setops.py @@ -4,8 +4,7 @@ from pandas._libs.tslibs import IncompatibleFrequency import pandas as pd -from pandas import PeriodIndex, date_range, period_range -import pandas._testing as tm +from pandas import PeriodIndex, _testing as tm, date_range, period_range def _permute(obj): diff --git a/pandas/tests/indexes/period/test_shift.py b/pandas/tests/indexes/period/test_shift.py index 278bb7f07c679..a04c01e5471ad 100644 --- a/pandas/tests/indexes/period/test_shift.py +++ b/pandas/tests/indexes/period/test_shift.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import PeriodIndex, period_range -import pandas._testing as tm +from pandas import PeriodIndex, _testing as tm, period_range class TestPeriodIndexShift: diff --git a/pandas/tests/indexes/period/test_to_timestamp.py b/pandas/tests/indexes/period/test_to_timestamp.py index c2328872aee1b..bf00fe713effc 100644 --- a/pandas/tests/indexes/period/test_to_timestamp.py +++ b/pandas/tests/indexes/period/test_to_timestamp.py @@ -9,10 +9,10 @@ PeriodIndex, Timedelta, Timestamp, + _testing as tm, date_range, period_range, ) -import pandas._testing as tm class TestToTimestamp: diff --git a/pandas/tests/indexes/period/test_tools.py b/pandas/tests/indexes/period/test_tools.py index 82c13240c6bf2..354a13536afce 100644 --- a/pandas/tests/indexes/period/test_tools.py +++ b/pandas/tests/indexes/period/test_tools.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Period, PeriodIndex, period_range -import pandas._testing as tm +from pandas import Period, PeriodIndex, _testing as tm, period_range class TestPeriodRepresentation: diff --git a/pandas/tests/indexes/ranges/test_constructors.py b/pandas/tests/indexes/ranges/test_constructors.py index f573da44e99b3..1aa254c14a7e9 100644 --- a/pandas/tests/indexes/ranges/test_constructors.py +++ b/pandas/tests/indexes/ranges/test_constructors.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import Index, RangeIndex, Series -import pandas._testing as tm +from pandas import Index, RangeIndex, Series, _testing as tm class TestRangeIndexConstructors: diff --git a/pandas/tests/indexes/ranges/test_indexing.py b/pandas/tests/indexes/ranges/test_indexing.py index 238c33c3db6d7..b123fdf5ffbe5 100644 --- a/pandas/tests/indexes/ranges/test_indexing.py +++ b/pandas/tests/indexes/ranges/test_indexing.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import RangeIndex -import pandas._testing as tm +from pandas import RangeIndex, _testing as tm class TestGetIndexer: diff --git a/pandas/tests/indexes/ranges/test_join.py b/pandas/tests/indexes/ranges/test_join.py index 76013d2b7a387..d209180ed2e7b 100644 --- a/pandas/tests/indexes/ranges/test_join.py +++ b/pandas/tests/indexes/ranges/test_join.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Index, Int64Index, RangeIndex -import pandas._testing as tm +from pandas import Index, Int64Index, RangeIndex, _testing as tm class TestJoin: diff --git a/pandas/tests/indexes/ranges/test_range.py b/pandas/tests/indexes/ranges/test_range.py index 5b6f9cb358b7d..af8506a8f7204 100644 --- a/pandas/tests/indexes/ranges/test_range.py +++ b/pandas/tests/indexes/ranges/test_range.py @@ -4,8 +4,7 @@ from pandas.core.dtypes.common import ensure_platform_int import pandas as pd -from pandas import Float64Index, Index, Int64Index, RangeIndex -import pandas._testing as tm +from pandas import Float64Index, Index, Int64Index, RangeIndex, _testing as tm from ..test_numeric import Numeric diff --git a/pandas/tests/indexes/ranges/test_setops.py b/pandas/tests/indexes/ranges/test_setops.py index 5b565310cfb9c..f8ab1673a391d 100644 --- a/pandas/tests/indexes/ranges/test_setops.py +++ b/pandas/tests/indexes/ranges/test_setops.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import Index, Int64Index, RangeIndex -import pandas._testing as tm +from pandas import Index, Int64Index, RangeIndex, _testing as tm class TestRangeIndexSetOps: diff --git a/pandas/tests/indexes/test_any_index.py b/pandas/tests/indexes/test_any_index.py index 5e7065f785309..d84fc08a1ca19 100644 --- a/pandas/tests/indexes/test_any_index.py +++ b/pandas/tests/indexes/test_any_index.py @@ -5,7 +5,7 @@ """ import pytest -import pandas._testing as tm +from pandas import _testing as tm def test_boolean_context_compat(index): diff --git a/pandas/tests/indexes/test_base.py b/pandas/tests/indexes/test_base.py index eaf48421dc071..6d19baf4ef8c7 100644 --- a/pandas/tests/indexes/test_base.py +++ b/pandas/tests/indexes/test_base.py @@ -8,7 +8,7 @@ import numpy as np import pytest -import pandas._config.config as cf +from pandas._config import config as cf from pandas._libs.tslib import Timestamp from pandas.compat.numpy import np_datetime64_compat @@ -28,11 +28,11 @@ Series, TimedeltaIndex, UInt64Index, + _testing as tm, date_range, isna, period_range, ) -import pandas._testing as tm from pandas.core.indexes.api import ( Index, MultiIndex, diff --git a/pandas/tests/indexes/test_common.py b/pandas/tests/indexes/test_common.py index 02a173eb4958d..163ad5c07b1ac 100644 --- a/pandas/tests/indexes/test_common.py +++ b/pandas/tests/indexes/test_common.py @@ -13,8 +13,7 @@ from pandas.core.dtypes.common import is_period_dtype, needs_i8_conversion import pandas as pd -from pandas import CategoricalIndex, MultiIndex, RangeIndex -import pandas._testing as tm +from pandas import CategoricalIndex, MultiIndex, RangeIndex, _testing as tm class TestCommon: diff --git a/pandas/tests/indexes/test_engines.py b/pandas/tests/indexes/test_engines.py index 9ea70a457e516..77fa65cb6024a 100644 --- a/pandas/tests/indexes/test_engines.py +++ b/pandas/tests/indexes/test_engines.py @@ -6,7 +6,7 @@ from pandas._libs import algos as libalgos, index as libindex import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture( diff --git a/pandas/tests/indexes/test_index_new.py b/pandas/tests/indexes/test_index_new.py index 9248c185bccd7..7dfa85b600896 100644 --- a/pandas/tests/indexes/test_index_new.py +++ b/pandas/tests/indexes/test_index_new.py @@ -19,9 +19,9 @@ TimedeltaIndex, Timestamp, UInt64Index, + _testing as tm, period_range, ) -import pandas._testing as tm class TestIndexConstructorInference: diff --git a/pandas/tests/indexes/test_indexing.py b/pandas/tests/indexes/test_indexing.py index 8910a3731cf8a..b132ca316e160 100644 --- a/pandas/tests/indexes/test_indexing.py +++ b/pandas/tests/indexes/test_indexing.py @@ -16,8 +16,7 @@ import numpy as np import pytest -from pandas import Float64Index, Index, Int64Index, UInt64Index -import pandas._testing as tm +from pandas import Float64Index, Index, Int64Index, UInt64Index, _testing as tm class TestContains: diff --git a/pandas/tests/indexes/test_numeric.py b/pandas/tests/indexes/test_numeric.py index 33de0800658f2..03c9fa466b235 100644 --- a/pandas/tests/indexes/test_numeric.py +++ b/pandas/tests/indexes/test_numeric.py @@ -6,8 +6,7 @@ from pandas._libs.tslibs import Timestamp import pandas as pd -from pandas import Float64Index, Index, Int64Index, Series, UInt64Index -import pandas._testing as tm +from pandas import Float64Index, Index, Int64Index, Series, UInt64Index, _testing as tm from pandas.tests.indexes.common import Base diff --git a/pandas/tests/indexes/test_numpy_compat.py b/pandas/tests/indexes/test_numpy_compat.py index 043539c173427..eda5104880c42 100644 --- a/pandas/tests/indexes/test_numpy_compat.py +++ b/pandas/tests/indexes/test_numpy_compat.py @@ -11,8 +11,8 @@ UInt64Index, _np_version_under1p17, _np_version_under1p18, + _testing as tm, ) -import pandas._testing as tm from pandas.core.indexes.datetimelike import DatetimeIndexOpsMixin diff --git a/pandas/tests/indexes/test_setops.py b/pandas/tests/indexes/test_setops.py index 1a40fe550be61..3aac77e891657 100644 --- a/pandas/tests/indexes/test_setops.py +++ b/pandas/tests/indexes/test_setops.py @@ -8,8 +8,7 @@ from pandas.core.dtypes.common import is_dtype_equal import pandas as pd -from pandas import Float64Index, Int64Index, RangeIndex, UInt64Index -import pandas._testing as tm +from pandas import Float64Index, Int64Index, RangeIndex, UInt64Index, _testing as tm from pandas.api.types import pandas_dtype COMPATIBLE_INCONSISTENT_PAIRS = { diff --git a/pandas/tests/indexes/timedeltas/test_astype.py b/pandas/tests/indexes/timedeltas/test_astype.py index d9f24b4a35520..561c6c99a9fa9 100644 --- a/pandas/tests/indexes/timedeltas/test_astype.py +++ b/pandas/tests/indexes/timedeltas/test_astype.py @@ -11,9 +11,9 @@ NaT, Timedelta, TimedeltaIndex, + _testing as tm, timedelta_range, ) -import pandas._testing as tm class TestTimedeltaIndex: diff --git a/pandas/tests/indexes/timedeltas/test_constructors.py b/pandas/tests/indexes/timedeltas/test_constructors.py index 41e4e220c999c..18b7bdbdcbeb8 100644 --- a/pandas/tests/indexes/timedeltas/test_constructors.py +++ b/pandas/tests/indexes/timedeltas/test_constructors.py @@ -4,8 +4,13 @@ import pytest import pandas as pd -from pandas import Timedelta, TimedeltaIndex, timedelta_range, to_timedelta -import pandas._testing as tm +from pandas import ( + Timedelta, + TimedeltaIndex, + _testing as tm, + timedelta_range, + to_timedelta, +) from pandas.core.arrays import TimedeltaArray diff --git a/pandas/tests/indexes/timedeltas/test_delete.py b/pandas/tests/indexes/timedeltas/test_delete.py index 63f2b450aa818..292e280d5014b 100644 --- a/pandas/tests/indexes/timedeltas/test_delete.py +++ b/pandas/tests/indexes/timedeltas/test_delete.py @@ -1,5 +1,4 @@ -from pandas import TimedeltaIndex, timedelta_range -import pandas._testing as tm +from pandas import TimedeltaIndex, _testing as tm, timedelta_range class TestTimedeltaIndexDelete: diff --git a/pandas/tests/indexes/timedeltas/test_fillna.py b/pandas/tests/indexes/timedeltas/test_fillna.py index 47b2f2ff597f4..d72f55ff20163 100644 --- a/pandas/tests/indexes/timedeltas/test_fillna.py +++ b/pandas/tests/indexes/timedeltas/test_fillna.py @@ -1,5 +1,4 @@ -from pandas import Index, NaT, Timedelta, TimedeltaIndex -import pandas._testing as tm +from pandas import Index, NaT, Timedelta, TimedeltaIndex, _testing as tm class TestFillNA: diff --git a/pandas/tests/indexes/timedeltas/test_indexing.py b/pandas/tests/indexes/timedeltas/test_indexing.py index 396a676b97a1b..721870bcf4aae 100644 --- a/pandas/tests/indexes/timedeltas/test_indexing.py +++ b/pandas/tests/indexes/timedeltas/test_indexing.py @@ -5,8 +5,14 @@ import pytest import pandas as pd -from pandas import Index, Timedelta, TimedeltaIndex, notna, timedelta_range -import pandas._testing as tm +from pandas import ( + Index, + Timedelta, + TimedeltaIndex, + _testing as tm, + notna, + timedelta_range, +) class TestGetItem: diff --git a/pandas/tests/indexes/timedeltas/test_insert.py b/pandas/tests/indexes/timedeltas/test_insert.py index 1ebc0a4b1eca0..36271b3c7dbea 100644 --- a/pandas/tests/indexes/timedeltas/test_insert.py +++ b/pandas/tests/indexes/timedeltas/test_insert.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Index, Timedelta, TimedeltaIndex, timedelta_range -import pandas._testing as tm +from pandas import Index, Timedelta, TimedeltaIndex, _testing as tm, timedelta_range class TestTimedeltaIndexInsert: diff --git a/pandas/tests/indexes/timedeltas/test_join.py b/pandas/tests/indexes/timedeltas/test_join.py index aaf4ef29e162b..008a154a0dcf5 100644 --- a/pandas/tests/indexes/timedeltas/test_join.py +++ b/pandas/tests/indexes/timedeltas/test_join.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Index, Timedelta, timedelta_range -import pandas._testing as tm +from pandas import Index, Timedelta, _testing as tm, timedelta_range class TestJoin: diff --git a/pandas/tests/indexes/timedeltas/test_ops.py b/pandas/tests/indexes/timedeltas/test_ops.py index 3e452e7e2841d..876dd6ac454b0 100644 --- a/pandas/tests/indexes/timedeltas/test_ops.py +++ b/pandas/tests/indexes/timedeltas/test_ops.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Series, TimedeltaIndex, timedelta_range -import pandas._testing as tm +from pandas import Series, TimedeltaIndex, _testing as tm, timedelta_range from pandas.tseries.offsets import DateOffset, Day, Hour diff --git a/pandas/tests/indexes/timedeltas/test_partial_slicing.py b/pandas/tests/indexes/timedeltas/test_partial_slicing.py index e5f509acf4734..9a3e7e9865d85 100644 --- a/pandas/tests/indexes/timedeltas/test_partial_slicing.py +++ b/pandas/tests/indexes/timedeltas/test_partial_slicing.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series, timedelta_range -import pandas._testing as tm +from pandas import Series, _testing as tm, timedelta_range class TestSlicing: diff --git a/pandas/tests/indexes/timedeltas/test_scalar_compat.py b/pandas/tests/indexes/timedeltas/test_scalar_compat.py index 16c19b8d00380..1e416f7f09994 100644 --- a/pandas/tests/indexes/timedeltas/test_scalar_compat.py +++ b/pandas/tests/indexes/timedeltas/test_scalar_compat.py @@ -1,15 +1,20 @@ """ Tests for TimedeltaIndex methods behaving like their Timedelta counterparts """ - import numpy as np import pytest from pandas._libs.tslibs.offsets import INVALID_FREQ_ERR_MSG import pandas as pd -from pandas import Index, Series, Timedelta, TimedeltaIndex, timedelta_range -import pandas._testing as tm +from pandas import ( + Index, + Series, + Timedelta, + TimedeltaIndex, + _testing as tm, + timedelta_range, +) class TestVectorizedTimedelta: diff --git a/pandas/tests/indexes/timedeltas/test_searchsorted.py b/pandas/tests/indexes/timedeltas/test_searchsorted.py index 4806a9acff96f..0ddb377dfe293 100644 --- a/pandas/tests/indexes/timedeltas/test_searchsorted.py +++ b/pandas/tests/indexes/timedeltas/test_searchsorted.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series, TimedeltaIndex, Timestamp, array -import pandas._testing as tm +from pandas import Series, TimedeltaIndex, Timestamp, _testing as tm, array class TestSearchSorted: diff --git a/pandas/tests/indexes/timedeltas/test_setops.py b/pandas/tests/indexes/timedeltas/test_setops.py index 6a2f66cade733..c00699ea2c1eb 100644 --- a/pandas/tests/indexes/timedeltas/test_setops.py +++ b/pandas/tests/indexes/timedeltas/test_setops.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Int64Index, TimedeltaIndex, timedelta_range -import pandas._testing as tm +from pandas import Int64Index, TimedeltaIndex, _testing as tm, timedelta_range from pandas.tseries.offsets import Hour diff --git a/pandas/tests/indexes/timedeltas/test_shift.py b/pandas/tests/indexes/timedeltas/test_shift.py index 1282bd510ec17..1ad2d7c55b753 100644 --- a/pandas/tests/indexes/timedeltas/test_shift.py +++ b/pandas/tests/indexes/timedeltas/test_shift.py @@ -3,8 +3,7 @@ from pandas.errors import NullFrequencyError import pandas as pd -from pandas import TimedeltaIndex -import pandas._testing as tm +from pandas import TimedeltaIndex, _testing as tm class TestTimedeltaIndexShift: diff --git a/pandas/tests/indexes/timedeltas/test_timedelta.py b/pandas/tests/indexes/timedeltas/test_timedelta.py index 4a1749ff734c1..69c17e0c22f39 100644 --- a/pandas/tests/indexes/timedeltas/test_timedelta.py +++ b/pandas/tests/indexes/timedeltas/test_timedelta.py @@ -11,10 +11,10 @@ Series, Timedelta, TimedeltaIndex, + _testing as tm, date_range, timedelta_range, ) -import pandas._testing as tm from ..datetimelike import DatetimeLike diff --git a/pandas/tests/indexes/timedeltas/test_timedelta_range.py b/pandas/tests/indexes/timedeltas/test_timedelta_range.py index 7d78fbf9ff190..5d0cb608b3dcb 100644 --- a/pandas/tests/indexes/timedeltas/test_timedelta_range.py +++ b/pandas/tests/indexes/timedeltas/test_timedelta_range.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Timedelta, timedelta_range, to_timedelta -import pandas._testing as tm +from pandas import Timedelta, _testing as tm, timedelta_range, to_timedelta from pandas.tseries.offsets import Day, Second diff --git a/pandas/tests/indexing/common.py b/pandas/tests/indexing/common.py index 9cc031001f81c..67d40bcacbfc3 100644 --- a/pandas/tests/indexing/common.py +++ b/pandas/tests/indexing/common.py @@ -3,8 +3,15 @@ import numpy as np -from pandas import DataFrame, Float64Index, MultiIndex, Series, UInt64Index, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Float64Index, + MultiIndex, + Series, + UInt64Index, + _testing as tm, + date_range, +) def _mklbl(prefix, n): diff --git a/pandas/tests/indexing/interval/test_interval.py b/pandas/tests/indexing/interval/test_interval.py index 634020982b1c2..ab4413030d1cd 100644 --- a/pandas/tests/indexing/interval/test_interval.py +++ b/pandas/tests/indexing/interval/test_interval.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, IntervalIndex, Series -import pandas._testing as tm +from pandas import DataFrame, IntervalIndex, Series, _testing as tm class TestIntervalIndex: diff --git a/pandas/tests/indexing/interval/test_interval_new.py b/pandas/tests/indexing/interval/test_interval_new.py index 03c3034772bc6..ecbd498e1b04d 100644 --- a/pandas/tests/indexing/interval/test_interval_new.py +++ b/pandas/tests/indexing/interval/test_interval_new.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import Interval, IntervalIndex, Series -import pandas._testing as tm +from pandas import Interval, IntervalIndex, Series, _testing as tm class TestIntervalIndex: diff --git a/pandas/tests/indexing/multiindex/test_chaining_and_caching.py b/pandas/tests/indexing/multiindex/test_chaining_and_caching.py index d3b13336e2a44..b4217fcad748b 100644 --- a/pandas/tests/indexing/multiindex/test_chaining_and_caching.py +++ b/pandas/tests/indexing/multiindex/test_chaining_and_caching.py @@ -1,9 +1,8 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm -import pandas.core.common as com +from pandas import DataFrame, MultiIndex, Series, _testing as tm +from pandas.core import common as com def test_detect_chained_assignment(): diff --git a/pandas/tests/indexing/multiindex/test_getitem.py b/pandas/tests/indexing/multiindex/test_getitem.py index 54b22dbc53466..4ff876d38f38e 100644 --- a/pandas/tests/indexing/multiindex/test_getitem.py +++ b/pandas/tests/indexing/multiindex/test_getitem.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm from pandas.core.indexing import IndexingError # ---------------------------------------------------------------------------- diff --git a/pandas/tests/indexing/multiindex/test_iloc.py b/pandas/tests/indexing/multiindex/test_iloc.py index 9859c7235c380..7ad7455cedcc5 100644 --- a/pandas/tests/indexing/multiindex/test_iloc.py +++ b/pandas/tests/indexing/multiindex/test_iloc.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm @pytest.fixture diff --git a/pandas/tests/indexing/multiindex/test_indexing_slow.py b/pandas/tests/indexing/multiindex/test_indexing_slow.py index ea4453b8dd6eb..8aaf416aaae93 100644 --- a/pandas/tests/indexing/multiindex/test_indexing_slow.py +++ b/pandas/tests/indexing/multiindex/test_indexing_slow.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm @pytest.mark.slow @@ -15,7 +14,7 @@ def test_multiindex_get_loc(): # GH7724, GH2646 with warnings.catch_warnings(record=True): # test indexing into a multi-index before & past the lexsort depth - from numpy.random import randint, choice, randn + from numpy.random import choice, randint, randn cols = ["jim", "joe", "jolie", "joline", "jolia"] diff --git a/pandas/tests/indexing/multiindex/test_insert.py b/pandas/tests/indexing/multiindex/test_insert.py index 42922c3deeee4..abc4e969d9015 100644 --- a/pandas/tests/indexing/multiindex/test_insert.py +++ b/pandas/tests/indexing/multiindex/test_insert.py @@ -1,7 +1,6 @@ from numpy.random import randn -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm class TestMultiIndexInsertion: diff --git a/pandas/tests/indexing/multiindex/test_ix.py b/pandas/tests/indexing/multiindex/test_ix.py index 01b0b392d52a3..8ceae7680d2bd 100644 --- a/pandas/tests/indexing/multiindex/test_ix.py +++ b/pandas/tests/indexing/multiindex/test_ix.py @@ -3,8 +3,7 @@ from pandas.errors import PerformanceWarning -from pandas import DataFrame, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, _testing as tm class TestMultiIndex: diff --git a/pandas/tests/indexing/multiindex/test_loc.py b/pandas/tests/indexing/multiindex/test_loc.py index f0cbdbe8d0564..939fcc5f6c983 100644 --- a/pandas/tests/indexing/multiindex/test_loc.py +++ b/pandas/tests/indexing/multiindex/test_loc.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm from pandas.core.indexing import IndexingError diff --git a/pandas/tests/indexing/multiindex/test_multiindex.py b/pandas/tests/indexing/multiindex/test_multiindex.py index 5e5fcd3db88d8..fdf839b5503e1 100644 --- a/pandas/tests/indexing/multiindex/test_multiindex.py +++ b/pandas/tests/indexing/multiindex/test_multiindex.py @@ -1,11 +1,10 @@ import numpy as np -import pandas._libs.index as _index +from pandas._libs import index as _index from pandas.errors import PerformanceWarning import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm class TestMultiIndexBasic: diff --git a/pandas/tests/indexing/multiindex/test_partial.py b/pandas/tests/indexing/multiindex/test_partial.py index 538aa1d3a1164..1b7c6d0482587 100644 --- a/pandas/tests/indexing/multiindex/test_partial.py +++ b/pandas/tests/indexing/multiindex/test_partial.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Float64Index, Int64Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Float64Index, Int64Index, MultiIndex, _testing as tm class TestMultiIndexPartial: diff --git a/pandas/tests/indexing/multiindex/test_setitem.py b/pandas/tests/indexing/multiindex/test_setitem.py index 853b92ea91274..c25f6a8535324 100644 --- a/pandas/tests/indexing/multiindex/test_setitem.py +++ b/pandas/tests/indexing/multiindex/test_setitem.py @@ -3,9 +3,17 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, Series, Timestamp, date_range, isna, notna -import pandas._testing as tm -import pandas.core.common as com +from pandas import ( + DataFrame, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, + isna, + notna, +) +from pandas.core import common as com class TestMultiIndexSetItem: diff --git a/pandas/tests/indexing/multiindex/test_slice.py b/pandas/tests/indexing/multiindex/test_slice.py index 532bb4f2e6dac..50a4ea62b9b75 100644 --- a/pandas/tests/indexing/multiindex/test_slice.py +++ b/pandas/tests/indexing/multiindex/test_slice.py @@ -4,8 +4,7 @@ from pandas.errors import UnsortedIndexError import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, _testing as tm from pandas.core.indexing import _non_reducing_slice from pandas.tests.indexing.common import _mklbl diff --git a/pandas/tests/indexing/multiindex/test_sorted.py b/pandas/tests/indexing/multiindex/test_sorted.py index fdeb3ce95b0bb..15c964ab53e7e 100644 --- a/pandas/tests/indexing/multiindex/test_sorted.py +++ b/pandas/tests/indexing/multiindex/test_sorted.py @@ -2,8 +2,7 @@ from numpy.random import randn import pytest -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm class TestMultiIndexSorted: diff --git a/pandas/tests/indexing/multiindex/test_xs.py b/pandas/tests/indexing/multiindex/test_xs.py index ff748d755c063..430f621d7d1cd 100644 --- a/pandas/tests/indexing/multiindex/test_xs.py +++ b/pandas/tests/indexing/multiindex/test_xs.py @@ -1,9 +1,16 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex, Series, concat, date_range -import pandas._testing as tm -import pandas.core.common as com +from pandas import ( + DataFrame, + Index, + MultiIndex, + Series, + _testing as tm, + concat, + date_range, +) +from pandas.core import common as com @pytest.fixture diff --git a/pandas/tests/indexing/test_callable.py b/pandas/tests/indexing/test_callable.py index 621417eb38d94..d168122fe155d 100644 --- a/pandas/tests/indexing/test_callable.py +++ b/pandas/tests/indexing/test_callable.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestIndexingCallable: diff --git a/pandas/tests/indexing/test_categorical.py b/pandas/tests/indexing/test_categorical.py index 98edb56260b01..9327e9e62194c 100644 --- a/pandas/tests/indexing/test_categorical.py +++ b/pandas/tests/indexing/test_categorical.py @@ -14,8 +14,8 @@ Series, Timedelta, Timestamp, + _testing as tm, ) -import pandas._testing as tm from pandas.api.types import CategoricalDtype as CDT diff --git a/pandas/tests/indexing/test_chaining_and_caching.py b/pandas/tests/indexing/test_chaining_and_caching.py index fa5fe5ba5c384..e66fd96daf51f 100644 --- a/pandas/tests/indexing/test_chaining_and_caching.py +++ b/pandas/tests/indexing/test_chaining_and_caching.py @@ -2,9 +2,15 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp, date_range, option_context -import pandas._testing as tm -import pandas.core.common as com +from pandas import ( + DataFrame, + Series, + Timestamp, + _testing as tm, + date_range, + option_context, +) +from pandas.core import common as com class TestCaching: diff --git a/pandas/tests/indexing/test_check_indexer.py b/pandas/tests/indexing/test_check_indexer.py index 69d4065234d93..2125994781325 100644 --- a/pandas/tests/indexing/test_check_indexer.py +++ b/pandas/tests/indexing/test_check_indexer.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.api.indexers import check_array_indexer diff --git a/pandas/tests/indexing/test_coercion.py b/pandas/tests/indexing/test_coercion.py index 1512c88a68778..316dcc88ebf7b 100644 --- a/pandas/tests/indexing/test_coercion.py +++ b/pandas/tests/indexing/test_coercion.py @@ -5,10 +5,8 @@ import numpy as np import pytest -import pandas.compat as compat - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm, compat as compat ############################################################### # Index / Series common tests which may trigger dtype coercions diff --git a/pandas/tests/indexing/test_datetime.py b/pandas/tests/indexing/test_datetime.py index ad71b6b72df33..d93ac2d51e400 100644 --- a/pandas/tests/indexing/test_datetime.py +++ b/pandas/tests/indexing/test_datetime.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DataFrame, Index, Series, Timestamp, _testing as tm, date_range class TestDatetimeIndex: diff --git a/pandas/tests/indexing/test_floats.py b/pandas/tests/indexing/test_floats.py index 18b9898e7d800..2e243a34ec8d1 100644 --- a/pandas/tests/indexing/test_floats.py +++ b/pandas/tests/indexing/test_floats.py @@ -3,8 +3,15 @@ import numpy as np import pytest -from pandas import DataFrame, Float64Index, Index, Int64Index, RangeIndex, Series -import pandas._testing as tm +from pandas import ( + DataFrame, + Float64Index, + Index, + Int64Index, + RangeIndex, + Series, + _testing as tm, +) # We pass through the error message from numpy _slice_iloc_msg = re.escape( diff --git a/pandas/tests/indexing/test_iloc.py b/pandas/tests/indexing/test_iloc.py index c5f40102874dd..afa0333fab3a4 100644 --- a/pandas/tests/indexing/test_iloc.py +++ b/pandas/tests/indexing/test_iloc.py @@ -1,5 +1,4 @@ """ test positional based indexing with iloc """ - from datetime import datetime from warnings import catch_warnings, simplefilter @@ -7,8 +6,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, concat, date_range, isna -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, concat, date_range, isna from pandas.api.types import is_scalar from pandas.core.indexing import IndexingError from pandas.tests.indexing.common import Base diff --git a/pandas/tests/indexing/test_indexing.py b/pandas/tests/indexing/test_indexing.py index ced70069dd955..737d3df90b94a 100644 --- a/pandas/tests/indexing/test_indexing.py +++ b/pandas/tests/indexing/test_indexing.py @@ -1,5 +1,4 @@ """ test fancy indexing & misc """ - from datetime import datetime import re import weakref @@ -10,8 +9,7 @@ from pandas.core.dtypes.common import is_float_dtype, is_integer_dtype import pandas as pd -from pandas import DataFrame, Index, NaT, Series -import pandas._testing as tm +from pandas import DataFrame, Index, NaT, Series, _testing as tm from pandas.core.indexing import _maybe_numeric_slice, _non_reducing_slice from pandas.tests.indexing.common import _mklbl diff --git a/pandas/tests/indexing/test_indexing_slow.py b/pandas/tests/indexing/test_indexing_slow.py index 2ffa44bec14a6..2e348b77e6ed5 100644 --- a/pandas/tests/indexing/test_indexing_slow.py +++ b/pandas/tests/indexing/test_indexing_slow.py @@ -1,7 +1,6 @@ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm class TestIndexingSlow: diff --git a/pandas/tests/indexing/test_loc.py b/pandas/tests/indexing/test_loc.py index 47980e88f76d4..200bc720459cc 100644 --- a/pandas/tests/indexing/test_loc.py +++ b/pandas/tests/indexing/test_loc.py @@ -6,8 +6,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm, date_range from pandas.api.types import is_scalar from pandas.tests.indexing.common import Base diff --git a/pandas/tests/indexing/test_na_indexing.py b/pandas/tests/indexing/test_na_indexing.py index 9e8ef6e6e1c22..7d7cc0a85581a 100644 --- a/pandas/tests/indexing/test_na_indexing.py +++ b/pandas/tests/indexing/test_na_indexing.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/indexing/test_partial.py b/pandas/tests/indexing/test_partial.py index 350f86b4e9fd0..c8cd591c7d561 100644 --- a/pandas/tests/indexing/test_partial.py +++ b/pandas/tests/indexing/test_partial.py @@ -3,13 +3,20 @@ TODO: these should be split among the indexer tests """ - import numpy as np import pytest import pandas as pd -from pandas import DataFrame, Index, Period, Series, Timestamp, date_range, period_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Index, + Period, + Series, + Timestamp, + _testing as tm, + date_range, + period_range, +) class TestPartialSetting: diff --git a/pandas/tests/indexing/test_scalar.py b/pandas/tests/indexing/test_scalar.py index 4337f01ea33e0..40cb02e93cc07 100644 --- a/pandas/tests/indexing/test_scalar.py +++ b/pandas/tests/indexing/test_scalar.py @@ -4,8 +4,15 @@ import numpy as np import pytest -from pandas import DataFrame, Series, Timedelta, Timestamp, date_range, period_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Series, + Timedelta, + Timestamp, + _testing as tm, + date_range, + period_range, +) from pandas.tests.indexing.common import Base diff --git a/pandas/tests/indexing/test_timedelta.py b/pandas/tests/indexing/test_timedelta.py index 7da368e4bb321..08591b55f6ff1 100644 --- a/pandas/tests/indexing/test_timedelta.py +++ b/pandas/tests/indexing/test_timedelta.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestTimedeltaIndexing: diff --git a/pandas/tests/internals/test_internals.py b/pandas/tests/internals/test_internals.py index 06ccdd2484a2a..802c7cf42a4c4 100644 --- a/pandas/tests/internals/test_internals.py +++ b/pandas/tests/internals/test_internals.py @@ -10,9 +10,16 @@ from pandas._libs.internals import BlockPlacement import pandas as pd -from pandas import Categorical, DataFrame, DatetimeIndex, Index, MultiIndex, Series -import pandas._testing as tm -import pandas.core.algorithms as algos +from pandas import ( + Categorical, + DataFrame, + DatetimeIndex, + Index, + MultiIndex, + Series, + _testing as tm, +) +from pandas.core import algorithms as algos from pandas.core.arrays import DatetimeArray, SparseArray, TimedeltaArray from pandas.core.internals import BlockManager, SingleBlockManager, make_block diff --git a/pandas/tests/io/conftest.py b/pandas/tests/io/conftest.py index fcee25c258efa..bbad0647314a6 100644 --- a/pandas/tests/io/conftest.py +++ b/pandas/tests/io/conftest.py @@ -2,7 +2,7 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.parsers import read_csv diff --git a/pandas/tests/io/excel/conftest.py b/pandas/tests/io/excel/conftest.py index 0455e0d61ad97..d57fc7fe8e9ae 100644 --- a/pandas/tests/io/excel/conftest.py +++ b/pandas/tests/io/excel/conftest.py @@ -1,8 +1,7 @@ import pytest -import pandas.util._test_decorators as td - -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td from pandas.io.parsers import read_csv diff --git a/pandas/tests/io/excel/test_odf.py b/pandas/tests/io/excel/test_odf.py index d6c6399f082c6..2587cba2671ce 100644 --- a/pandas/tests/io/excel/test_odf.py +++ b/pandas/tests/io/excel/test_odf.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm pytest.importorskip("odf") diff --git a/pandas/tests/io/excel/test_odswriter.py b/pandas/tests/io/excel/test_odswriter.py index b50c641ebf0c0..381c58d8a274f 100644 --- a/pandas/tests/io/excel/test_odswriter.py +++ b/pandas/tests/io/excel/test_odswriter.py @@ -1,6 +1,6 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.excel import ExcelWriter diff --git a/pandas/tests/io/excel/test_openpyxl.py b/pandas/tests/io/excel/test_openpyxl.py index 5f8d58ea1f105..8242efd6be435 100644 --- a/pandas/tests/io/excel/test_openpyxl.py +++ b/pandas/tests/io/excel/test_openpyxl.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.io.excel import ExcelWriter, _OpenpyxlWriter diff --git a/pandas/tests/io/excel/test_readers.py b/pandas/tests/io/excel/test_readers.py index 955db982f8300..e4122ee616dcc 100644 --- a/pandas/tests/io/excel/test_readers.py +++ b/pandas/tests/io/excel/test_readers.py @@ -8,11 +8,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm +from pandas.util import _test_decorators as td @contextlib.contextmanager diff --git a/pandas/tests/io/excel/test_style.py b/pandas/tests/io/excel/test_style.py index 936fc175a493b..95c3779c29b15 100644 --- a/pandas/tests/io/excel/test_style.py +++ b/pandas/tests/io/excel/test_style.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.io.excel import ExcelWriter from pandas.io.formats.excel import ExcelFormatter diff --git a/pandas/tests/io/excel/test_writers.py b/pandas/tests/io/excel/test_writers.py index e3ee53b63e102..9cd7a6c36acbf 100644 --- a/pandas/tests/io/excel/test_writers.py +++ b/pandas/tests/io/excel/test_writers.py @@ -6,11 +6,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Index, MultiIndex, get_option, set_option -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm, get_option, set_option +from pandas.util import _test_decorators as td from pandas.io.excel import ( ExcelFile, diff --git a/pandas/tests/io/excel/test_xlrd.py b/pandas/tests/io/excel/test_xlrd.py index 1c9c514b20f46..2efcf0a9fa587 100644 --- a/pandas/tests/io/excel/test_xlrd.py +++ b/pandas/tests/io/excel/test_xlrd.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.excel import ExcelFile diff --git a/pandas/tests/io/excel/test_xlsxwriter.py b/pandas/tests/io/excel/test_xlsxwriter.py index b6f791434a92b..5be8aeb9f9200 100644 --- a/pandas/tests/io/excel/test_xlsxwriter.py +++ b/pandas/tests/io/excel/test_xlsxwriter.py @@ -2,8 +2,7 @@ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.io.excel import ExcelWriter diff --git a/pandas/tests/io/excel/test_xlwt.py b/pandas/tests/io/excel/test_xlwt.py index a2d8b9fce9767..e1656011d467d 100644 --- a/pandas/tests/io/excel/test_xlwt.py +++ b/pandas/tests/io/excel/test_xlwt.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, _testing as tm from pandas.io.excel import ExcelWriter, _XlwtWriter diff --git a/pandas/tests/io/formats/test_css.py b/pandas/tests/io/formats/test_css.py index 9383f86e335fa..b4442c39c6127 100644 --- a/pandas/tests/io/formats/test_css.py +++ b/pandas/tests/io/formats/test_css.py @@ -1,6 +1,6 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.formats.css import CSSResolver, CSSWarning diff --git a/pandas/tests/io/formats/test_eng_formatting.py b/pandas/tests/io/formats/test_eng_formatting.py index 6801316ada8a3..2038a7f6e2e7b 100644 --- a/pandas/tests/io/formats/test_eng_formatting.py +++ b/pandas/tests/io/formats/test_eng_formatting.py @@ -1,10 +1,9 @@ import numpy as np import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm -import pandas.io.formats.format as fmt +from pandas.io.formats import format as fmt class TestEngFormatter: diff --git a/pandas/tests/io/formats/test_format.py b/pandas/tests/io/formats/test_format.py index 3c40a2ae8d6b8..c757d247e8089 100644 --- a/pandas/tests/io/formats/test_format.py +++ b/pandas/tests/io/formats/test_format.py @@ -1,7 +1,6 @@ """ Test output formatting for Series/DataFrame, including to_string & reprs """ - from datetime import datetime from io import StringIO import itertools @@ -28,6 +27,7 @@ NaT, Series, Timestamp, + _testing as tm, date_range, get_option, option_context, @@ -35,10 +35,8 @@ reset_option, set_option, ) -import pandas._testing as tm -import pandas.io.formats.format as fmt -import pandas.io.formats.printing as printing +from pandas.io.formats import format as fmt, printing as printing use_32bit_repr = is_platform_windows() or is_platform_32bit() diff --git a/pandas/tests/io/formats/test_info.py b/pandas/tests/io/formats/test_info.py index 877bd1650ae60..67ea393ab0113 100644 --- a/pandas/tests/io/formats/test_info.py +++ b/pandas/tests/io/formats/test_info.py @@ -14,12 +14,12 @@ DataFrame, MultiIndex, Series, + _testing as tm, date_range, option_context, reset_option, set_option, ) -import pandas._testing as tm @pytest.fixture diff --git a/pandas/tests/io/formats/test_printing.py b/pandas/tests/io/formats/test_printing.py index f0d5ef19c4468..8fa12a0834f6d 100644 --- a/pandas/tests/io/formats/test_printing.py +++ b/pandas/tests/io/formats/test_printing.py @@ -1,12 +1,11 @@ import numpy as np import pytest -import pandas._config.config as cf +from pandas._config import config as cf import pandas as pd -import pandas.io.formats.format as fmt -import pandas.io.formats.printing as printing +from pandas.io.formats import format as fmt, printing as printing def test_adjoin(): diff --git a/pandas/tests/io/formats/test_style.py b/pandas/tests/io/formats/test_style.py index ec4614538004c..b4c1418692b26 100644 --- a/pandas/tests/io/formats/test_style.py +++ b/pandas/tests/io/formats/test_style.py @@ -5,11 +5,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm +from pandas.util import _test_decorators as td jinja2 = pytest.importorskip("jinja2") from pandas.io.formats.style import Styler, _get_level_lengths # noqa # isort:skip diff --git a/pandas/tests/io/formats/test_to_csv.py b/pandas/tests/io/formats/test_to_csv.py index 4c86e3a16b135..650a150cdd919 100644 --- a/pandas/tests/io/formats/test_to_csv.py +++ b/pandas/tests/io/formats/test_to_csv.py @@ -6,8 +6,7 @@ import pytest import pandas as pd -from pandas import DataFrame, compat -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, compat class TestToCSV: diff --git a/pandas/tests/io/formats/test_to_excel.py b/pandas/tests/io/formats/test_to_excel.py index 8529a0fb33b67..9b3b44c99d270 100644 --- a/pandas/tests/io/formats/test_to_excel.py +++ b/pandas/tests/io/formats/test_to_excel.py @@ -2,10 +2,9 @@ ExcelFormatter is tested implicitly in pandas/tests/io/excel """ - import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.formats.css import CSSWarning from pandas.io.formats.excel import CSSToExcelConverter diff --git a/pandas/tests/io/formats/test_to_html.py b/pandas/tests/io/formats/test_to_html.py index e85fd398964d0..f7b970433e28e 100644 --- a/pandas/tests/io/formats/test_to_html.py +++ b/pandas/tests/io/formats/test_to_html.py @@ -6,10 +6,9 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, option_context -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm, option_context -import pandas.io.formats.format as fmt +from pandas.io.formats import format as fmt lorem_ipsum = ( "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " diff --git a/pandas/tests/io/formats/test_to_latex.py b/pandas/tests/io/formats/test_to_latex.py index 509e5bcb33304..d4b4fac2e52d5 100644 --- a/pandas/tests/io/formats/test_to_latex.py +++ b/pandas/tests/io/formats/test_to_latex.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm class TestToLatex: diff --git a/pandas/tests/io/json/test_compression.py b/pandas/tests/io/json/test_compression.py index 182c21ed1d416..9c44ada185e42 100644 --- a/pandas/tests/io/json/test_compression.py +++ b/pandas/tests/io/json/test_compression.py @@ -1,9 +1,8 @@ import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td def test_compression_roundtrip(compression): diff --git a/pandas/tests/io/json/test_deprecated_kwargs.py b/pandas/tests/io/json/test_deprecated_kwargs.py index 79245bc9d34a8..4bfba86d6d4db 100644 --- a/pandas/tests/io/json/test_deprecated_kwargs.py +++ b/pandas/tests/io/json/test_deprecated_kwargs.py @@ -1,9 +1,8 @@ """ Tests for the deprecated keyword arguments for `read_json`. """ - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.json import read_json diff --git a/pandas/tests/io/json/test_json_table_schema.py b/pandas/tests/io/json/test_json_table_schema.py index df64af6ac2265..baa4cd0f08b7b 100644 --- a/pandas/tests/io/json/test_json_table_schema.py +++ b/pandas/tests/io/json/test_json_table_schema.py @@ -8,8 +8,7 @@ from pandas.core.dtypes.dtypes import CategoricalDtype, DatetimeTZDtype, PeriodDtype import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.io.json._table_schema import ( as_json_table_type, diff --git a/pandas/tests/io/json/test_normalize.py b/pandas/tests/io/json/test_normalize.py index 8d93fbcc063f4..b95f74ee0d280 100644 --- a/pandas/tests/io/json/test_normalize.py +++ b/pandas/tests/io/json/test_normalize.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, Series, json_normalize -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm, json_normalize from pandas.io.json._normalize import nested_to_record diff --git a/pandas/tests/io/json/test_pandas.py b/pandas/tests/io/json/test_pandas.py index 10f49b9b81528..f93a34623d9b6 100644 --- a/pandas/tests/io/json/test_pandas.py +++ b/pandas/tests/io/json/test_pandas.py @@ -10,11 +10,17 @@ import pytest from pandas.compat import is_platform_32bit, is_platform_windows -import pandas.util._test_decorators as td import pandas as pd -from pandas import DataFrame, DatetimeIndex, Series, Timestamp, read_json -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Series, + Timestamp, + _testing as tm, + read_json, +) +from pandas.util import _test_decorators as td _seriesd = tm.getSeriesData() diff --git a/pandas/tests/io/json/test_readlines.py b/pandas/tests/io/json/test_readlines.py index b475fa2c514ff..9c56f8527f436 100644 --- a/pandas/tests/io/json/test_readlines.py +++ b/pandas/tests/io/json/test_readlines.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, read_json -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, read_json from pandas.io.json._json import JsonReader diff --git a/pandas/tests/io/json/test_ujson.py b/pandas/tests/io/json/test_ujson.py index 952c583040360..52568d8036748 100644 --- a/pandas/tests/io/json/test_ujson.py +++ b/pandas/tests/io/json/test_ujson.py @@ -13,12 +13,20 @@ import pytest import pytz -import pandas._libs.json as ujson +from pandas._libs import json as ujson from pandas._libs.tslib import Timestamp -import pandas.compat as compat -from pandas import DataFrame, DatetimeIndex, Index, NaT, Series, Timedelta, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Index, + NaT, + Series, + Timedelta, + _testing as tm, + compat as compat, + date_range, +) def _clean_dict(d): diff --git a/pandas/tests/io/parser/test_c_parser_only.py b/pandas/tests/io/parser/test_c_parser_only.py index d76d01904731a..f06ab740de7e3 100644 --- a/pandas/tests/io/parser/test_c_parser_only.py +++ b/pandas/tests/io/parser/test_c_parser_only.py @@ -4,7 +4,6 @@ these tests out of this module as soon as the Python parser can accept further arguments when parsing. """ - from io import BytesIO, StringIO, TextIOWrapper import mmap import os @@ -14,10 +13,9 @@ import pytest from pandas.errors import ParserError -import pandas.util._test_decorators as td -from pandas import DataFrame, concat -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, concat +from pandas.util import _test_decorators as td @pytest.mark.parametrize( diff --git a/pandas/tests/io/parser/test_comment.py b/pandas/tests/io/parser/test_comment.py index 60e32d7c27200..7bed3e46e24ae 100644 --- a/pandas/tests/io/parser/test_comment.py +++ b/pandas/tests/io/parser/test_comment.py @@ -7,8 +7,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.mark.parametrize("na_values", [None, ["NaN"]]) diff --git a/pandas/tests/io/parser/test_common.py b/pandas/tests/io/parser/test_common.py index 12e73bae40eac..cc5305b21f58b 100644 --- a/pandas/tests/io/parser/test_common.py +++ b/pandas/tests/io/parser/test_common.py @@ -16,10 +16,9 @@ from pandas._libs.tslib import Timestamp from pandas.errors import DtypeWarning, EmptyDataError, ParserError -import pandas.util._test_decorators as td -from pandas import DataFrame, Index, MultiIndex, Series, compat, concat -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, compat, concat +from pandas.util import _test_decorators as td from pandas.io.parsers import CParserWrapper, TextFileReader, TextParser diff --git a/pandas/tests/io/parser/test_compression.py b/pandas/tests/io/parser/test_compression.py index b773664adda72..d1c9bc8556db1 100644 --- a/pandas/tests/io/parser/test_compression.py +++ b/pandas/tests/io/parser/test_compression.py @@ -2,14 +2,13 @@ Tests compressed data parsing functionality for all of the parsers defined in parsers.py """ - import os import zipfile import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture(params=[True, False]) diff --git a/pandas/tests/io/parser/test_converters.py b/pandas/tests/io/parser/test_converters.py index 88b400d9a11df..a037af4888e54 100644 --- a/pandas/tests/io/parser/test_converters.py +++ b/pandas/tests/io/parser/test_converters.py @@ -9,8 +9,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm def test_converters_type_must_be_dict(all_parsers): diff --git a/pandas/tests/io/parser/test_dialect.py b/pandas/tests/io/parser/test_dialect.py index cc65def0fd096..aed5203d81999 100644 --- a/pandas/tests/io/parser/test_dialect.py +++ b/pandas/tests/io/parser/test_dialect.py @@ -2,7 +2,6 @@ Tests that dialects are properly handled during parsing for all of the parsers defined in parsers.py """ - import csv from io import StringIO @@ -10,8 +9,7 @@ from pandas.errors import ParserWarning -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.fixture diff --git a/pandas/tests/io/parser/test_dtypes.py b/pandas/tests/io/parser/test_dtypes.py index 6ac310e3b2227..d1f2938d83fe3 100644 --- a/pandas/tests/io/parser/test_dtypes.py +++ b/pandas/tests/io/parser/test_dtypes.py @@ -13,8 +13,16 @@ from pandas.core.dtypes.dtypes import CategoricalDtype import pandas as pd -from pandas import Categorical, DataFrame, Index, MultiIndex, Series, Timestamp, concat -import pandas._testing as tm +from pandas import ( + Categorical, + DataFrame, + Index, + MultiIndex, + Series, + Timestamp, + _testing as tm, + concat, +) @pytest.mark.parametrize("dtype", [str, object]) diff --git a/pandas/tests/io/parser/test_encoding.py b/pandas/tests/io/parser/test_encoding.py index de7b3bed034c7..413e425e50fe4 100644 --- a/pandas/tests/io/parser/test_encoding.py +++ b/pandas/tests/io/parser/test_encoding.py @@ -2,7 +2,6 @@ Tests encoding functionality during parsing for all of the parsers defined in parsers.py """ - from io import BytesIO import os import tempfile @@ -10,8 +9,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm def test_bytes_io_input(all_parsers): diff --git a/pandas/tests/io/parser/test_header.py b/pandas/tests/io/parser/test_header.py index 4cd110136d7b0..b2f85bc7afeb0 100644 --- a/pandas/tests/io/parser/test_header.py +++ b/pandas/tests/io/parser/test_header.py @@ -2,7 +2,6 @@ Tests that the file header is properly handled or inferred during parsing for all of the parsers defined in parsers.py """ - from collections import namedtuple from io import StringIO @@ -11,8 +10,7 @@ from pandas.errors import ParserError -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm def test_read_with_bad_header(all_parsers): diff --git a/pandas/tests/io/parser/test_index_col.py b/pandas/tests/io/parser/test_index_col.py index 9f425168540ba..dd0717250ef82 100644 --- a/pandas/tests/io/parser/test_index_col.py +++ b/pandas/tests/io/parser/test_index_col.py @@ -8,8 +8,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm @pytest.mark.parametrize("with_header", [True, False]) diff --git a/pandas/tests/io/parser/test_mangle_dupes.py b/pandas/tests/io/parser/test_mangle_dupes.py index 5c4e642115798..08fbbf8122e1f 100644 --- a/pandas/tests/io/parser/test_mangle_dupes.py +++ b/pandas/tests/io/parser/test_mangle_dupes.py @@ -7,8 +7,7 @@ import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.mark.parametrize("kwargs", [dict(), dict(mangle_dupe_cols=True)]) diff --git a/pandas/tests/io/parser/test_multi_thread.py b/pandas/tests/io/parser/test_multi_thread.py index d50560c684084..c8953de13fe42 100644 --- a/pandas/tests/io/parser/test_multi_thread.py +++ b/pandas/tests/io/parser/test_multi_thread.py @@ -9,8 +9,7 @@ import pytest import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm def _construct_dataframe(num_rows): diff --git a/pandas/tests/io/parser/test_na_values.py b/pandas/tests/io/parser/test_na_values.py index 9f86bbd65640e..253819aa66caf 100644 --- a/pandas/tests/io/parser/test_na_values.py +++ b/pandas/tests/io/parser/test_na_values.py @@ -9,8 +9,7 @@ from pandas._libs.parsers import STR_NA_VALUES -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm def test_string_nas(all_parsers): diff --git a/pandas/tests/io/parser/test_network.py b/pandas/tests/io/parser/test_network.py index 509ae89909699..89d372089b478 100644 --- a/pandas/tests/io/parser/test_network.py +++ b/pandas/tests/io/parser/test_network.py @@ -8,10 +8,8 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm +from pandas.util import _test_decorators as td from pandas.io.feather_format import read_feather from pandas.io.parsers import read_csv diff --git a/pandas/tests/io/parser/test_parse_dates.py b/pandas/tests/io/parser/test_parse_dates.py index ed947755e3419..0d93d6ec3c743 100644 --- a/pandas/tests/io/parser/test_parse_dates.py +++ b/pandas/tests/io/parser/test_parse_dates.py @@ -2,7 +2,6 @@ Tests date parsing functionality for all of the parsers defined in parsers.py """ - from datetime import date, datetime from io import StringIO @@ -19,11 +18,10 @@ from pandas.compat.numpy import np_array_datetime64_compat import pandas as pd -from pandas import DataFrame, DatetimeIndex, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, DatetimeIndex, Index, MultiIndex, Series, _testing as tm from pandas.core.indexes.datetimes import date_range -import pandas.io.date_converters as conv +from pandas.io import date_converters as conv # constant _DEFAULT_DATETIME = datetime(1, 1, 1) diff --git a/pandas/tests/io/parser/test_python_parser_only.py b/pandas/tests/io/parser/test_python_parser_only.py index 4d933fa02d36f..71d9e9d65b04e 100644 --- a/pandas/tests/io/parser/test_python_parser_only.py +++ b/pandas/tests/io/parser/test_python_parser_only.py @@ -4,7 +4,6 @@ these tests out of this module as soon as the C parser can accept further arguments when parsing. """ - import csv from io import BytesIO, StringIO @@ -12,8 +11,7 @@ from pandas.errors import ParserError -from pandas import DataFrame, Index, MultiIndex -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, _testing as tm def test_default_separator(python_parser_only): diff --git a/pandas/tests/io/parser/test_quoting.py b/pandas/tests/io/parser/test_quoting.py index 14773dfbea20e..a4bfb79078b75 100644 --- a/pandas/tests/io/parser/test_quoting.py +++ b/pandas/tests/io/parser/test_quoting.py @@ -2,7 +2,6 @@ Tests that quoting specifications are properly handled during parsing for all of the parsers defined in parsers.py """ - import csv from io import StringIO @@ -10,8 +9,7 @@ from pandas.errors import ParserError -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/io/parser/test_read_fwf.py b/pandas/tests/io/parser/test_read_fwf.py index e982667f06f31..2511967c94653 100644 --- a/pandas/tests/io/parser/test_read_fwf.py +++ b/pandas/tests/io/parser/test_read_fwf.py @@ -3,7 +3,6 @@ test suite is independent of the others because the engine is set to 'python-fwf' internally. """ - from datetime import datetime from io import BytesIO, StringIO @@ -11,8 +10,7 @@ import pytest import pandas as pd -from pandas import DataFrame, DatetimeIndex -import pandas._testing as tm +from pandas import DataFrame, DatetimeIndex, _testing as tm from pandas.io.parsers import EmptyDataError, read_csv, read_fwf diff --git a/pandas/tests/io/parser/test_skiprows.py b/pandas/tests/io/parser/test_skiprows.py index fdccef1127c7e..4388146d3e661 100644 --- a/pandas/tests/io/parser/test_skiprows.py +++ b/pandas/tests/io/parser/test_skiprows.py @@ -2,7 +2,6 @@ Tests that skipped rows are properly handled during parsing for all of the parsers defined in parsers.py """ - from datetime import datetime from io import StringIO @@ -11,8 +10,7 @@ from pandas.errors import EmptyDataError -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm @pytest.mark.parametrize("skiprows", [list(range(6)), 6]) diff --git a/pandas/tests/io/parser/test_textreader.py b/pandas/tests/io/parser/test_textreader.py index 1c2518646bb29..a829da46e7602 100644 --- a/pandas/tests/io/parser/test_textreader.py +++ b/pandas/tests/io/parser/test_textreader.py @@ -8,11 +8,10 @@ import numpy as np import pytest -import pandas._libs.parsers as parser +from pandas._libs import parsers as parser from pandas._libs.parsers import TextReader -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm from pandas.io.parsers import TextFileReader, read_csv diff --git a/pandas/tests/io/parser/test_unsupported.py b/pandas/tests/io/parser/test_unsupported.py index 267fae760398a..30176b374b1f2 100644 --- a/pandas/tests/io/parser/test_unsupported.py +++ b/pandas/tests/io/parser/test_unsupported.py @@ -12,9 +12,9 @@ from pandas.errors import ParserError -import pandas._testing as tm +from pandas import _testing as tm -import pandas.io.parsers as parsers +from pandas.io import parsers as parsers from pandas.io.parsers import read_csv diff --git a/pandas/tests/io/parser/test_usecols.py b/pandas/tests/io/parser/test_usecols.py index d4e049cc3fcc2..5208c15e37606 100644 --- a/pandas/tests/io/parser/test_usecols.py +++ b/pandas/tests/io/parser/test_usecols.py @@ -9,8 +9,7 @@ from pandas._libs.tslib import Timestamp -from pandas import DataFrame, Index -import pandas._testing as tm +from pandas import DataFrame, Index, _testing as tm _msg_validate_usecols_arg = ( "'usecols' must either be list-like " diff --git a/pandas/tests/io/pytables/conftest.py b/pandas/tests/io/pytables/conftest.py index 38ffcb3b0e8ec..390ddb2c20257 100644 --- a/pandas/tests/io/pytables/conftest.py +++ b/pandas/tests/io/pytables/conftest.py @@ -1,6 +1,6 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture diff --git a/pandas/tests/io/pytables/test_compat.py b/pandas/tests/io/pytables/test_compat.py index c7200385aa998..a11e88e3b4575 100644 --- a/pandas/tests/io/pytables/test_compat.py +++ b/pandas/tests/io/pytables/test_compat.py @@ -1,7 +1,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.tests.io.pytables.common import ensure_clean_path tables = pytest.importorskip("tables") diff --git a/pandas/tests/io/pytables/test_complex.py b/pandas/tests/io/pytables/test_complex.py index 543940e674dba..a56073f254774 100644 --- a/pandas/tests/io/pytables/test_complex.py +++ b/pandas/tests/io/pytables/test_complex.py @@ -3,12 +3,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.tests.io.pytables.common import ensure_clean_path, ensure_clean_store +from pandas.util import _test_decorators as td from pandas.io.pytables import read_hdf diff --git a/pandas/tests/io/pytables/test_pytables_missing.py b/pandas/tests/io/pytables/test_pytables_missing.py index 9adb0a6d227da..53694ba98e543 100644 --- a/pandas/tests/io/pytables/test_pytables_missing.py +++ b/pandas/tests/io/pytables/test_pytables_missing.py @@ -1,9 +1,8 @@ import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td @td.skip_if_installed("tables") diff --git a/pandas/tests/io/pytables/test_store.py b/pandas/tests/io/pytables/test_store.py index df014171be817..f3ce2055ab6af 100644 --- a/pandas/tests/io/pytables/test_store.py +++ b/pandas/tests/io/pytables/test_store.py @@ -13,7 +13,6 @@ import pytest from pandas.compat import is_platform_little_endian, is_platform_windows -import pandas.util._test_decorators as td import pandas as pd from pandas import ( @@ -27,13 +26,13 @@ RangeIndex, Series, Timestamp, + _testing as tm, bdate_range, concat, date_range, isna, timedelta_range, ) -import pandas._testing as tm from pandas.tests.io.pytables.common import ( _maybe_remove, create_tempfile, @@ -43,6 +42,7 @@ safe_remove, tables, ) +from pandas.util import _test_decorators as td from pandas.io.pytables import ( ClosedFileError, diff --git a/pandas/tests/io/pytables/test_timezones.py b/pandas/tests/io/pytables/test_timezones.py index 38d32b0bdc8a3..063fc4e3efee2 100644 --- a/pandas/tests/io/pytables/test_timezones.py +++ b/pandas/tests/io/pytables/test_timezones.py @@ -3,16 +3,21 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, DatetimeIndex, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Series, + Timestamp, + _testing as tm, + date_range, +) from pandas.tests.io.pytables.common import ( _maybe_remove, ensure_clean_path, ensure_clean_store, ) +from pandas.util import _test_decorators as td def _compare_with_tz(a, b): diff --git a/pandas/tests/io/sas/test_sas.py b/pandas/tests/io/sas/test_sas.py index 5d2643c20ceb2..c3ea613d0f3cf 100644 --- a/pandas/tests/io/sas/test_sas.py +++ b/pandas/tests/io/sas/test_sas.py @@ -2,8 +2,7 @@ import pytest -from pandas import read_sas -import pandas._testing as tm +from pandas import _testing as tm, read_sas class TestSas: diff --git a/pandas/tests/io/sas/test_sas7bdat.py b/pandas/tests/io/sas/test_sas7bdat.py index 8c14f9de9f61c..69b92f8b5c324 100644 --- a/pandas/tests/io/sas/test_sas7bdat.py +++ b/pandas/tests/io/sas/test_sas7bdat.py @@ -8,10 +8,10 @@ import pytest from pandas.errors import EmptyDataError -import pandas.util._test_decorators as td import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td # https://github.com/cython/cython/issues/1720 diff --git a/pandas/tests/io/sas/test_xport.py b/pandas/tests/io/sas/test_xport.py index 2682bafedb8f1..212115c33066e 100644 --- a/pandas/tests/io/sas/test_xport.py +++ b/pandas/tests/io/sas/test_xport.py @@ -4,7 +4,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.io.sas.sasreader import read_sas diff --git a/pandas/tests/io/test_clipboard.py b/pandas/tests/io/test_clipboard.py index b627e0e1cad54..05d5a1eec33b1 100644 --- a/pandas/tests/io/test_clipboard.py +++ b/pandas/tests/io/test_clipboard.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, get_option, read_clipboard -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, get_option, read_clipboard from pandas.io.clipboard import clipboard_get, clipboard_set diff --git a/pandas/tests/io/test_common.py b/pandas/tests/io/test_common.py index e2f4ae04c1f9f..8cd855f632387 100644 --- a/pandas/tests/io/test_common.py +++ b/pandas/tests/io/test_common.py @@ -9,12 +9,12 @@ import pytest from pandas.compat import is_platform_windows -import pandas.util._test_decorators as td import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td -import pandas.io.common as icom +from pandas.io import common as icom class CustomFSPath: diff --git a/pandas/tests/io/test_compression.py b/pandas/tests/io/test_compression.py index 59c9bd0a36d3d..57fce79d9387d 100644 --- a/pandas/tests/io/test_compression.py +++ b/pandas/tests/io/test_compression.py @@ -6,9 +6,9 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm -import pandas.io.common as icom +from pandas.io import common as icom @pytest.mark.parametrize( diff --git a/pandas/tests/io/test_date_converters.py b/pandas/tests/io/test_date_converters.py index cdb8eca02a3e5..6fc867e05b04d 100644 --- a/pandas/tests/io/test_date_converters.py +++ b/pandas/tests/io/test_date_converters.py @@ -2,9 +2,9 @@ import numpy as np -import pandas._testing as tm +from pandas import _testing as tm -import pandas.io.date_converters as conv +from pandas.io import date_converters as conv def test_parse_date_time(): diff --git a/pandas/tests/io/test_feather.py b/pandas/tests/io/test_feather.py index a8a5c8f00e6bf..1b3615d0425cb 100644 --- a/pandas/tests/io/test_feather.py +++ b/pandas/tests/io/test_feather.py @@ -4,10 +4,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td from pandas.io.feather_format import read_feather, to_feather # noqa: E402 isort:skip diff --git a/pandas/tests/io/test_fsspec.py b/pandas/tests/io/test_fsspec.py index c397a61616c1c..85e1b156620ff 100644 --- a/pandas/tests/io/test_fsspec.py +++ b/pandas/tests/io/test_fsspec.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, date_range, read_csv, read_parquet -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range, read_csv, read_parquet from pandas.util import _test_decorators as td df1 = DataFrame( @@ -37,8 +36,8 @@ def test_read_csv(cleared_fs): def test_reasonable_error(monkeypatch, cleared_fs): - from fsspec.registry import known_implementations from fsspec import registry + from fsspec.registry import known_implementations registry.target.clear() with pytest.raises(ValueError) as e: diff --git a/pandas/tests/io/test_gcs.py b/pandas/tests/io/test_gcs.py index 4d93119ffa3f5..128454d8c0f12 100644 --- a/pandas/tests/io/test_gcs.py +++ b/pandas/tests/io/test_gcs.py @@ -4,15 +4,13 @@ import numpy as np import pytest -from pandas import DataFrame, date_range, read_csv -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, date_range, read_csv from pandas.util import _test_decorators as td @td.skip_if_no("gcsfs") def test_read_csv_gcs(monkeypatch): - from fsspec import AbstractFileSystem - from fsspec import registry + from fsspec import AbstractFileSystem, registry registry.target.clear() # noqa # remove state @@ -37,8 +35,7 @@ def open(*args, **kwargs): @td.skip_if_no("gcsfs") def test_to_csv_gcs(monkeypatch): - from fsspec import AbstractFileSystem - from fsspec import registry + from fsspec import AbstractFileSystem, registry registry.target.clear() # noqa # remove state df1 = DataFrame( @@ -76,8 +73,7 @@ def mock_get_filepath_or_buffer(*args, **kwargs): @td.skip_if_no("gcsfs") def test_to_parquet_gcs_new_file(monkeypatch, tmpdir): """Regression test for writing to a not-yet-existent GCS Parquet file.""" - from fsspec import AbstractFileSystem - from fsspec import registry + from fsspec import AbstractFileSystem, registry registry.target.clear() # noqa # remove state df1 = DataFrame( diff --git a/pandas/tests/io/test_html.py b/pandas/tests/io/test_html.py index 2c93dbb5b6b83..178634fdcba92 100644 --- a/pandas/tests/io/test_html.py +++ b/pandas/tests/io/test_html.py @@ -12,10 +12,17 @@ from pandas.compat import is_platform_windows from pandas.errors import ParserError -import pandas.util._test_decorators as td -from pandas import DataFrame, MultiIndex, Series, Timestamp, date_range, read_csv -import pandas._testing as tm +from pandas import ( + DataFrame, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, + read_csv, +) +from pandas.util import _test_decorators as td from pandas.io.common import file_path_to_url import pandas.io.html diff --git a/pandas/tests/io/test_orc.py b/pandas/tests/io/test_orc.py index a1f9c6f6af51a..1e0b7281f0058 100644 --- a/pandas/tests/io/test_orc.py +++ b/pandas/tests/io/test_orc.py @@ -6,8 +6,7 @@ import pytest import pandas as pd -from pandas import read_orc -import pandas._testing as tm +from pandas import _testing as tm, read_orc pytest.importorskip("pyarrow", minversion="0.13.0") pytest.importorskip("pyarrow.orc") diff --git a/pandas/tests/io/test_parquet.py b/pandas/tests/io/test_parquet.py index 82157f3d722a9..7e56cf1ac09ef 100644 --- a/pandas/tests/io/test_parquet.py +++ b/pandas/tests/io/test_parquet.py @@ -8,10 +8,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td from pandas.io.parquet import ( FastParquetImpl, @@ -606,7 +605,7 @@ def test_partition_cols_supported(self, pa, df_full): df = df_full with tm.ensure_clean_dir() as path: df.to_parquet(path, partition_cols=partition_cols, compression=None) - import pyarrow.parquet as pq + from pyarrow import parquet as pq dataset = pq.ParquetDataset(path, validate_schema=False) assert len(dataset.partitions.partition_names) == 2 @@ -619,7 +618,7 @@ def test_partition_cols_string(self, pa, df_full): df = df_full with tm.ensure_clean_dir() as path: df.to_parquet(path, partition_cols=partition_cols, compression=None) - import pyarrow.parquet as pq + from pyarrow import parquet as pq dataset = pq.ParquetDataset(path, validate_schema=False) assert len(dataset.partitions.partition_names) == 1 diff --git a/pandas/tests/io/test_pickle.py b/pandas/tests/io/test_pickle.py index e4d43db7834e3..6110a888c9454 100644 --- a/pandas/tests/io/test_pickle.py +++ b/pandas/tests/io/test_pickle.py @@ -23,11 +23,10 @@ import pytest from pandas.compat import _get_lzma_file, _import_lzma, is_platform_little_endian -import pandas.util._test_decorators as td import pandas as pd -from pandas import Index -import pandas._testing as tm +from pandas import Index, _testing as tm +from pandas.util import _test_decorators as td from pandas.tseries.offsets import Day, MonthEnd diff --git a/pandas/tests/io/test_spss.py b/pandas/tests/io/test_spss.py index 013f56f83c5ec..9915e20a8ed88 100644 --- a/pandas/tests/io/test_spss.py +++ b/pandas/tests/io/test_spss.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm pyreadstat = pytest.importorskip("pyreadstat") diff --git a/pandas/tests/io/test_sql.py b/pandas/tests/io/test_sql.py index 0991fae39138e..6038f5fac1adc 100644 --- a/pandas/tests/io/test_sql.py +++ b/pandas/tests/io/test_sql.py @@ -16,7 +16,6 @@ - Tests for the fallback mode (`TestSQLiteFallback`) """ - import csv from datetime import date, datetime, time from io import StringIO @@ -35,23 +34,23 @@ MultiIndex, Series, Timestamp, + _testing as tm, concat, date_range, isna, to_datetime, to_timedelta, ) -import pandas._testing as tm -import pandas.io.sql as sql +from pandas.io import sql as sql from pandas.io.sql import read_sql_query, read_sql_table try: import sqlalchemy - import sqlalchemy.schema - import sqlalchemy.sql.sqltypes as sqltypes from sqlalchemy.ext import declarative from sqlalchemy.orm import session as sa_session + import sqlalchemy.schema + from sqlalchemy.sql import sqltypes as sqltypes SQLALCHEMY_INSTALLED = True except ImportError: diff --git a/pandas/tests/io/test_stata.py b/pandas/tests/io/test_stata.py index 6d7fec803a8e0..db62b07c9278c 100644 --- a/pandas/tests/io/test_stata.py +++ b/pandas/tests/io/test_stata.py @@ -15,7 +15,7 @@ from pandas.core.dtypes.common import is_categorical_dtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.frame import DataFrame, Series from pandas.io.parsers import read_csv diff --git a/pandas/tests/plotting/common.py b/pandas/tests/plotting/common.py index 896d3278cdde1..1827567277b6b 100644 --- a/pandas/tests/plotting/common.py +++ b/pandas/tests/plotting/common.py @@ -5,14 +5,12 @@ from numpy import random from pandas.util._decorators import cache_readonly -import pandas.util._test_decorators as td from pandas.core.dtypes.api import is_list_like import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm - +from pandas import DataFrame, Series, _testing as tm +from pandas.util import _test_decorators as td """ This is a common base class used for various plotting tests @@ -24,6 +22,7 @@ class TestPlotBase: def setup_method(self, method): import matplotlib as mpl + from pandas.plotting._matplotlib import compat mpl.rcdefaults() @@ -67,13 +66,13 @@ def teardown_method(self, method): @cache_readonly def plt(self): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt return plt @cache_readonly def colorconverter(self): - import matplotlib.colors as colors + from matplotlib import colors as colors return colors.colorConverter @@ -187,8 +186,8 @@ def _check_colors( Series used for color grouping key used for andrew_curves, parallel_coordinates, radviz test """ + from matplotlib.collections import Collection, LineCollection, PolyCollection from matplotlib.lines import Line2D - from matplotlib.collections import Collection, PolyCollection, LineCollection conv = self.colorconverter if linecolors is not None: @@ -519,7 +518,7 @@ def _unpack_cycler(self, rcParams, field="color"): def _check_plot_works(f, filterwarnings="always", **kwargs): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt ret = None with warnings.catch_warnings(): diff --git a/pandas/tests/plotting/test_backend.py b/pandas/tests/plotting/test_backend.py index 9025f8c361a82..943ab83bad096 100644 --- a/pandas/tests/plotting/test_backend.py +++ b/pandas/tests/plotting/test_backend.py @@ -4,9 +4,8 @@ import pkg_resources import pytest -import pandas.util._test_decorators as td - import pandas +from pandas.util import _test_decorators as td dummy_backend = types.ModuleType("pandas_dummy_backend") setattr(dummy_backend, "plot", lambda *args, **kwargs: "used_dummy") diff --git a/pandas/tests/plotting/test_boxplot_method.py b/pandas/tests/plotting/test_boxplot_method.py index 0a096acc9fa6d..5d6f045e8c21a 100644 --- a/pandas/tests/plotting/test_boxplot_method.py +++ b/pandas/tests/plotting/test_boxplot_method.py @@ -5,13 +5,17 @@ from numpy import random import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, MultiIndex, Series, date_range, timedelta_range -import pandas._testing as tm +from pandas import ( + DataFrame, + MultiIndex, + Series, + _testing as tm, + date_range, + plotting as plotting, + timedelta_range, +) from pandas.tests.plotting.common import TestPlotBase, _check_plot_works - -import pandas.plotting as plotting +from pandas.util import _test_decorators as td """ Test cases for .boxplot method """ diff --git a/pandas/tests/plotting/test_common.py b/pandas/tests/plotting/test_common.py index af67ed7ec215b..0f9ea94aa648e 100644 --- a/pandas/tests/plotting/test_common.py +++ b/pandas/tests/plotting/test_common.py @@ -1,9 +1,8 @@ import pytest -import pandas.util._test_decorators as td - from pandas import DataFrame from pandas.tests.plotting.common import TestPlotBase, _check_plot_works +from pandas.util import _test_decorators as td @td.skip_if_no_mpl diff --git a/pandas/tests/plotting/test_converter.py b/pandas/tests/plotting/test_converter.py index df2c9ecbd7a0a..ec76e18efbb71 100644 --- a/pandas/tests/plotting/test_converter.py +++ b/pandas/tests/plotting/test_converter.py @@ -5,13 +5,12 @@ import numpy as np import pytest -import pandas._config.config as cf +from pandas._config import config as cf from pandas.compat.numpy import np_datetime64_compat -import pandas.util._test_decorators as td -from pandas import Index, Period, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import Index, Period, Series, Timestamp, _testing as tm, date_range +from pandas.util import _test_decorators as td from pandas.plotting import ( deregister_matplotlib_converters, diff --git a/pandas/tests/plotting/test_datetimelike.py b/pandas/tests/plotting/test_datetimelike.py index 201856669103a..4827ab1daab37 100644 --- a/pandas/tests/plotting/test_datetimelike.py +++ b/pandas/tests/plotting/test_datetimelike.py @@ -7,14 +7,13 @@ import pytest from pandas._libs.tslibs import BaseOffset, to_offset -import pandas.util._test_decorators as td -from pandas import DataFrame, Index, NaT, Series, isna -import pandas._testing as tm +from pandas import DataFrame, Index, NaT, Series, _testing as tm, isna from pandas.core.indexes.datetimes import DatetimeIndex, bdate_range, date_range from pandas.core.indexes.period import Period, PeriodIndex, period_range from pandas.core.indexes.timedeltas import timedelta_range from pandas.tests.plotting.common import TestPlotBase +from pandas.util import _test_decorators as td from pandas.tseries.offsets import WeekOfMonth @@ -258,7 +257,7 @@ def test_plot_multiple_inferred_freq(self): @pytest.mark.slow def test_uhf(self): - import pandas.plotting._matplotlib.converter as conv + from pandas.plotting._matplotlib import converter as conv idx = date_range("2012-6-22 21:59:51.960928", freq="L", periods=500) df = DataFrame(np.random.randn(len(idx), 2), index=idx) @@ -395,7 +394,7 @@ def _test(ax): _test(ax) def test_get_finder(self): - import pandas.plotting._matplotlib.converter as conv + from pandas.plotting._matplotlib import converter as conv assert conv.get_finder(to_offset("B")) == conv._daily_finder assert conv.get_finder(to_offset("D")) == conv._daily_finder @@ -1492,7 +1491,7 @@ def test_matplotlib_scatter_datetime64(self): def _check_plot_works(f, freq=None, series=None, *args, **kwargs): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt fig = plt.gcf() diff --git a/pandas/tests/plotting/test_frame.py b/pandas/tests/plotting/test_frame.py index 3d85e79b15c4c..b95fc7e920f21 100644 --- a/pandas/tests/plotting/test_frame.py +++ b/pandas/tests/plotting/test_frame.py @@ -1,5 +1,4 @@ """ Test cases for DataFrame.plot """ - from datetime import date, datetime import itertools import string @@ -9,18 +8,24 @@ from numpy.random import rand, randn import pytest -import pandas.util._test_decorators as td - from pandas.core.dtypes.api import is_list_like import pandas as pd -from pandas import DataFrame, MultiIndex, PeriodIndex, Series, bdate_range, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + MultiIndex, + PeriodIndex, + Series, + _testing as tm, + bdate_range, + date_range, + plotting as plotting, +) from pandas.core.arrays import integer_array from pandas.tests.plotting.common import TestPlotBase, _check_plot_works +from pandas.util import _test_decorators as td from pandas.io.formats.printing import pprint_thing -import pandas.plotting as plotting @td.skip_if_no_mpl @@ -916,7 +921,7 @@ def test_area_lim(self): @pytest.mark.slow def test_bar_colors(self): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt default_colors = self._unpack_cycler(plt.rcParams) @@ -1230,7 +1235,7 @@ def test_if_hexbin_xaxis_label_is_visible(self): @pytest.mark.slow def test_if_scatterplot_colorbars_are_next_to_parent_axes(self): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt random_array = np.random.random((1000, 3)) df = pd.DataFrame(random_array, columns=["A label", "B label", "C label"]) @@ -1347,7 +1352,7 @@ def test_scatter_colors(self): def test_scatter_colorbar_different_cmap(self): # GH 33389 - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt df = pd.DataFrame({"x": [1, 2, 3], "y": [1, 3, 2], "c": [1, 2, 3]}) df["x2"] = df["x"] + 1 @@ -2016,7 +2021,7 @@ def test_no_legend(self): @pytest.mark.slow def test_style_by_column(self): - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt fig = plt.gcf() @@ -2407,8 +2412,8 @@ def test_specified_props_kwd_plot_box(self, props, expected): assert result[expected][0].get_color() == "C1" def test_default_color_cycle(self): - import matplotlib.pyplot as plt import cycler + from matplotlib import pyplot as plt colors = list("rgbk") plt.rcParams["axes.prop_cycle"] = cycler.cycler("color", colors) @@ -2845,7 +2850,7 @@ def test_sharex_and_ax(self): # https://github.com/pandas-dev/pandas/issues/9737 using gridspec, # the axis in fig.get_axis() are sorted differently than pandas # expected them, so make sure that only the right ones are removed - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt plt.close("all") gs, axes = _generate_4_axes_via_gridspec() @@ -2900,7 +2905,7 @@ def test_sharey_and_ax(self): # https://github.com/pandas-dev/pandas/issues/9737 using gridspec, # the axis in fig.get_axis() are sorted differently than pandas # expected them, so make sure that only the right ones are removed - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt gs, axes = _generate_4_axes_via_gridspec() @@ -2952,8 +2957,8 @@ def _check(axes): @td.skip_if_no_scipy def test_memory_leak(self): """ Check that every plot type gets properly collected. """ - import weakref import gc + import weakref results = {} for kind in plotting.PlotAccessor._all_kinds: @@ -2984,7 +2989,7 @@ def test_memory_leak(self): @pytest.mark.slow def test_df_subplots_patterns_minorticks(self): # GH 10657 - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt df = DataFrame( np.random.randn(10, 2), @@ -3031,8 +3036,7 @@ def test_df_subplots_patterns_minorticks(self): @pytest.mark.slow def test_df_gridspec_patterns(self): # GH 10819 - import matplotlib.pyplot as plt - import matplotlib.gridspec as gridspec + from matplotlib import gridspec as gridspec, pyplot as plt ts = Series(np.random.randn(10), index=date_range("1/1/2000", periods=10)) @@ -3421,8 +3425,8 @@ def test_xlabel_ylabel_dataframe_subplots( def _generate_4_axes_via_gridspec(): - import matplotlib.pyplot as plt import matplotlib as mpl + from matplotlib import pyplot as plt import matplotlib.gridspec # noqa gs = mpl.gridspec.GridSpec(2, 2) diff --git a/pandas/tests/plotting/test_groupby.py b/pandas/tests/plotting/test_groupby.py index 4ac23c2cffa15..cdfd4022c5774 100644 --- a/pandas/tests/plotting/test_groupby.py +++ b/pandas/tests/plotting/test_groupby.py @@ -1,14 +1,10 @@ """ Test cases for GroupBy.plot """ - - import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm from pandas.tests.plotting.common import TestPlotBase +from pandas.util import _test_decorators as td @td.skip_if_no_mpl diff --git a/pandas/tests/plotting/test_hist_method.py b/pandas/tests/plotting/test_hist_method.py index b6a6c326c3df3..0dd4057200cd8 100644 --- a/pandas/tests/plotting/test_hist_method.py +++ b/pandas/tests/plotting/test_hist_method.py @@ -1,14 +1,11 @@ """ Test cases for .hist method """ - import numpy as np from numpy.random import randn import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm from pandas.tests.plotting.common import TestPlotBase, _check_plot_works +from pandas.util import _test_decorators as td @td.skip_if_no_mpl @@ -101,7 +98,7 @@ def test_hist_layout_with_by(self): @pytest.mark.slow def test_hist_no_overlap(self): - from matplotlib.pyplot import subplot, gcf + from matplotlib.pyplot import gcf, subplot x = Series(randn(2)) y = Series(randn(2)) @@ -352,6 +349,7 @@ class TestDataFrameGroupByPlots(TestPlotBase): @pytest.mark.slow def test_grouped_hist_legacy(self): from matplotlib.patches import Rectangle + from pandas.plotting._matplotlib.hist import _grouped_hist df = DataFrame(randn(500, 2), columns=["A", "B"]) diff --git a/pandas/tests/plotting/test_misc.py b/pandas/tests/plotting/test_misc.py index 75eeede472fe9..c218c3f5c7881 100644 --- a/pandas/tests/plotting/test_misc.py +++ b/pandas/tests/plotting/test_misc.py @@ -1,17 +1,12 @@ """ Test cases for misc plot functions """ - import numpy as np from numpy import random from numpy.random import randn import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, plotting as plotting from pandas.tests.plotting.common import TestPlotBase, _check_plot_works - -import pandas.plotting as plotting +from pandas.util import _test_decorators as td @td.skip_if_mpl @@ -131,9 +126,10 @@ def test_scatter_matrix_axis(self): @pytest.mark.slow def test_andrews_curves(self, iris): - from pandas.plotting import andrews_curves from matplotlib import cm + from pandas.plotting import andrews_curves + df = iris _check_plot_works(andrews_curves, frame=df, class_column="Name") @@ -206,9 +202,10 @@ def test_andrews_curves(self, iris): @pytest.mark.slow def test_parallel_coordinates(self, iris): - from pandas.plotting import parallel_coordinates from matplotlib import cm + from pandas.plotting import parallel_coordinates + df = iris ax = _check_plot_works(parallel_coordinates, frame=df, class_column="Name") @@ -279,9 +276,10 @@ def test_parallel_coordinates_with_sorted_labels(self): @pytest.mark.slow def test_radviz(self, iris): - from pandas.plotting import radviz from matplotlib import cm + from pandas.plotting import radviz + df = iris _check_plot_works(radviz, frame=df, class_column="Name") @@ -397,6 +395,7 @@ def test_get_standard_colors_no_appending(self): # Make sure not to add more colors so that matplotlib can cycle # correctly. from matplotlib import cm + from pandas.plotting._matplotlib.style import _get_standard_colors color_before = cm.gnuplot(range(5)) diff --git a/pandas/tests/plotting/test_series.py b/pandas/tests/plotting/test_series.py index 64da98f57676f..9274c6587f4ac 100644 --- a/pandas/tests/plotting/test_series.py +++ b/pandas/tests/plotting/test_series.py @@ -1,6 +1,4 @@ """ Test cases for Series.plot """ - - from datetime import datetime from itertools import chain @@ -8,14 +6,10 @@ from numpy.random import randn import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range, plotting as plotting from pandas.tests.plotting.common import TestPlotBase, _check_plot_works - -import pandas.plotting as plotting +from pandas.util import _test_decorators as td @td.skip_if_no_mpl @@ -450,7 +444,7 @@ def test_hist_layout_with_by(self): @pytest.mark.slow def test_hist_no_overlap(self): - from matplotlib.pyplot import subplot, gcf + from matplotlib.pyplot import gcf, subplot x = Series(randn(2)) y = Series(randn(2)) @@ -802,7 +796,8 @@ def test_standard_colors(self): @pytest.mark.slow def test_standard_colors_all(self): - import matplotlib.colors as colors + from matplotlib import colors as colors + from pandas.plotting._matplotlib.style import _get_standard_colors # multiple colors like mediumaquamarine diff --git a/pandas/tests/reductions/test_reductions.py b/pandas/tests/reductions/test_reductions.py index a112bc80b60b0..b6b6b44862313 100644 --- a/pandas/tests/reductions/test_reductions.py +++ b/pandas/tests/reductions/test_reductions.py @@ -17,11 +17,11 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, isna, timedelta_range, to_timedelta, ) -import pandas._testing as tm from pandas.core import nanops diff --git a/pandas/tests/reductions/test_stat_reductions.py b/pandas/tests/reductions/test_stat_reductions.py index 59dbcb9ab9fa0..37bc937aaaff5 100644 --- a/pandas/tests/reductions/test_stat_reductions.py +++ b/pandas/tests/reductions/test_stat_reductions.py @@ -6,12 +6,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.arrays import DatetimeArray, PeriodArray, TimedeltaArray +from pandas.util import _test_decorators as td class TestDatetimeLikeStatReductions: diff --git a/pandas/tests/resample/test_base.py b/pandas/tests/resample/test_base.py index 28d33ebb23c20..a368c9737b052 100644 --- a/pandas/tests/resample/test_base.py +++ b/pandas/tests/resample/test_base.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.groupby.groupby import DataError from pandas.core.groupby.grouper import Grouper from pandas.core.indexes.datetimes import date_range diff --git a/pandas/tests/resample/test_datetime_index.py b/pandas/tests/resample/test_datetime_index.py index e7637a598403f..f4ebc025f5914 100644 --- a/pandas/tests/resample/test_datetime_index.py +++ b/pandas/tests/resample/test_datetime_index.py @@ -10,14 +10,13 @@ from pandas.errors import UnsupportedFunctionCall import pandas as pd -from pandas import DataFrame, Series, Timedelta, Timestamp, isna, notna -import pandas._testing as tm +from pandas import DataFrame, Series, Timedelta, Timestamp, _testing as tm, isna, notna from pandas.core.groupby.grouper import Grouper from pandas.core.indexes.datetimes import date_range from pandas.core.indexes.period import Period, period_range from pandas.core.resample import DatetimeIndex, _get_timestamp_range_edges -import pandas.tseries.offsets as offsets +from pandas.tseries import offsets as offsets from pandas.tseries.offsets import Minute diff --git a/pandas/tests/resample/test_deprecated.py b/pandas/tests/resample/test_deprecated.py index 8b3adbf08d157..d1fa4f74b61b2 100644 --- a/pandas/tests/resample/test_deprecated.py +++ b/pandas/tests/resample/test_deprecated.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.indexes.datetimes import date_range from pandas.core.indexes.period import PeriodIndex, period_range from pandas.core.indexes.timedeltas import timedelta_range diff --git a/pandas/tests/resample/test_period_index.py b/pandas/tests/resample/test_period_index.py index fe02eaef8ba82..bde2729bde394 100644 --- a/pandas/tests/resample/test_period_index.py +++ b/pandas/tests/resample/test_period_index.py @@ -10,13 +10,12 @@ from pandas.errors import InvalidIndexError import pandas as pd -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm from pandas.core.indexes.datetimes import date_range from pandas.core.indexes.period import Period, PeriodIndex, period_range from pandas.core.resample import _get_period_range_edges -import pandas.tseries.offsets as offsets +from pandas.tseries import offsets as offsets @pytest.fixture() diff --git a/pandas/tests/resample/test_resample_api.py b/pandas/tests/resample/test_resample_api.py index 73aa01cff84fa..6f5dbb261721a 100644 --- a/pandas/tests/resample/test_resample_api.py +++ b/pandas/tests/resample/test_resample_api.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.indexes.datetimes import date_range dti = date_range(start=datetime(2005, 1, 1), end=datetime(2005, 1, 10), freq="Min") diff --git a/pandas/tests/resample/test_resampler_grouper.py b/pandas/tests/resample/test_resampler_grouper.py index cbf3a778f9ae0..82226a22c9af9 100644 --- a/pandas/tests/resample/test_resampler_grouper.py +++ b/pandas/tests/resample/test_resampler_grouper.py @@ -6,8 +6,7 @@ from pandas.util._test_decorators import async_mark import pandas as pd -from pandas import DataFrame, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Series, Timestamp, _testing as tm from pandas.core.indexes.datetimes import date_range test_frame = DataFrame( diff --git a/pandas/tests/resample/test_time_grouper.py b/pandas/tests/resample/test_time_grouper.py index 26e429c47b494..66dd628971442 100644 --- a/pandas/tests/resample/test_time_grouper.py +++ b/pandas/tests/resample/test_time_grouper.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.groupby.grouper import Grouper from pandas.core.indexes.datetimes import date_range diff --git a/pandas/tests/resample/test_timedelta.py b/pandas/tests/resample/test_timedelta.py index 0fbb60c176b30..af2535c1fa8ae 100644 --- a/pandas/tests/resample/test_timedelta.py +++ b/pandas/tests/resample/test_timedelta.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.indexes.timedeltas import timedelta_range diff --git a/pandas/tests/reshape/merge/test_join.py b/pandas/tests/reshape/merge/test_join.py index c33443e24b268..e737c00eb7ec0 100644 --- a/pandas/tests/reshape/merge/test_join.py +++ b/pandas/tests/reshape/merge/test_join.py @@ -5,8 +5,7 @@ from pandas._libs import join as libjoin import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, concat, merge -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, concat, merge from pandas.tests.reshape.merge.test_merge import NGROUPS, N, get_test_data a_ = np.array diff --git a/pandas/tests/reshape/merge/test_merge.py b/pandas/tests/reshape/merge/test_merge.py index 4fd3c688b8771..13c29bf229bca 100644 --- a/pandas/tests/reshape/merge/test_merge.py +++ b/pandas/tests/reshape/merge/test_merge.py @@ -24,8 +24,8 @@ Series, TimedeltaIndex, UInt64Index, + _testing as tm, ) -import pandas._testing as tm from pandas.api.types import CategoricalDtype as CDT from pandas.core.reshape.concat import concat from pandas.core.reshape.merge import MergeError, merge diff --git a/pandas/tests/reshape/merge/test_merge_asof.py b/pandas/tests/reshape/merge/test_merge_asof.py index 9b09f0033715d..c15207a0ae4ae 100644 --- a/pandas/tests/reshape/merge/test_merge_asof.py +++ b/pandas/tests/reshape/merge/test_merge_asof.py @@ -5,8 +5,7 @@ import pytz import pandas as pd -from pandas import Timedelta, merge_asof, read_csv, to_datetime -import pandas._testing as tm +from pandas import Timedelta, _testing as tm, merge_asof, read_csv, to_datetime from pandas.core.reshape.merge import MergeError diff --git a/pandas/tests/reshape/merge/test_merge_index_as_string.py b/pandas/tests/reshape/merge/test_merge_index_as_string.py index 08614d04caf4b..27cfded8f3266 100644 --- a/pandas/tests/reshape/merge/test_merge_index_as_string.py +++ b/pandas/tests/reshape/merge/test_merge_index_as_string.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.fixture diff --git a/pandas/tests/reshape/merge/test_merge_ordered.py b/pandas/tests/reshape/merge/test_merge_ordered.py index e0063925a03e1..6a57242d683a7 100644 --- a/pandas/tests/reshape/merge/test_merge_ordered.py +++ b/pandas/tests/reshape/merge/test_merge_ordered.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, merge_ordered -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, merge_ordered class TestMergeOrdered: diff --git a/pandas/tests/reshape/merge/test_multi.py b/pandas/tests/reshape/merge/test_multi.py index 61fdafa0c6db2..777a53cd5dfc4 100644 --- a/pandas/tests/reshape/merge/test_multi.py +++ b/pandas/tests/reshape/merge/test_multi.py @@ -3,8 +3,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm from pandas.core.reshape.concat import concat from pandas.core.reshape.merge import merge diff --git a/pandas/tests/reshape/test_concat.py b/pandas/tests/reshape/test_concat.py index ffeb5ff0f8aaa..d7e1cae05f845 100644 --- a/pandas/tests/reshape/test_concat.py +++ b/pandas/tests/reshape/test_concat.py @@ -22,12 +22,12 @@ MultiIndex, Series, Timestamp, + _testing as tm, concat, date_range, isna, read_csv, ) -import pandas._testing as tm from pandas.core.arrays import SparseArray from pandas.core.construction import create_series_with_explicit_dtype from pandas.tests.extension.decimal import to_decimal diff --git a/pandas/tests/reshape/test_crosstab.py b/pandas/tests/reshape/test_crosstab.py index 8795af2e11122..3d12fca69225d 100644 --- a/pandas/tests/reshape/test_crosstab.py +++ b/pandas/tests/reshape/test_crosstab.py @@ -1,8 +1,15 @@ import numpy as np import pytest -from pandas import CategoricalIndex, DataFrame, Index, MultiIndex, Series, crosstab -import pandas._testing as tm +from pandas import ( + CategoricalIndex, + DataFrame, + Index, + MultiIndex, + Series, + _testing as tm, + crosstab, +) class TestCrosstab: diff --git a/pandas/tests/reshape/test_cut.py b/pandas/tests/reshape/test_cut.py index 60c80a8abdba6..39bd1b7208f5d 100644 --- a/pandas/tests/reshape/test_cut.py +++ b/pandas/tests/reshape/test_cut.py @@ -12,6 +12,7 @@ Series, TimedeltaIndex, Timestamp, + _testing as tm, cut, date_range, isna, @@ -19,9 +20,8 @@ timedelta_range, to_datetime, ) -import pandas._testing as tm from pandas.api.types import CategoricalDtype as CDT -import pandas.core.reshape.tile as tmod +from pandas.core.reshape import tile as tmod def test_simple(): diff --git a/pandas/tests/reshape/test_get_dummies.py b/pandas/tests/reshape/test_get_dummies.py index c003bfa6a239a..687470dd0f4ca 100644 --- a/pandas/tests/reshape/test_get_dummies.py +++ b/pandas/tests/reshape/test_get_dummies.py @@ -6,8 +6,14 @@ from pandas.core.dtypes.common import is_integer_dtype import pandas as pd -from pandas import Categorical, CategoricalIndex, DataFrame, Series, get_dummies -import pandas._testing as tm +from pandas import ( + Categorical, + CategoricalIndex, + DataFrame, + Series, + _testing as tm, + get_dummies, +) from pandas.core.arrays.sparse import SparseArray, SparseDtype diff --git a/pandas/tests/reshape/test_melt.py b/pandas/tests/reshape/test_melt.py index a0fa10802f860..7fe9af642351a 100644 --- a/pandas/tests/reshape/test_melt.py +++ b/pandas/tests/reshape/test_melt.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, lreshape, melt, wide_to_long -import pandas._testing as tm +from pandas import DataFrame, _testing as tm, lreshape, melt, wide_to_long class TestMelt: diff --git a/pandas/tests/reshape/test_pivot.py b/pandas/tests/reshape/test_pivot.py index c07a5673fe503..0456b5a1ec9f1 100644 --- a/pandas/tests/reshape/test_pivot.py +++ b/pandas/tests/reshape/test_pivot.py @@ -12,10 +12,10 @@ Index, MultiIndex, Series, + _testing as tm, concat, date_range, ) -import pandas._testing as tm from pandas.api.types import CategoricalDtype as CDT from pandas.core.reshape.pivot import pivot_table diff --git a/pandas/tests/reshape/test_pivot_multilevel.py b/pandas/tests/reshape/test_pivot_multilevel.py index 8374e829e6a28..0e23f9609d5f8 100644 --- a/pandas/tests/reshape/test_pivot_multilevel.py +++ b/pandas/tests/reshape/test_pivot_multilevel.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Index, MultiIndex -import pandas._testing as tm +from pandas import Index, MultiIndex, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/reshape/test_qcut.py b/pandas/tests/reshape/test_qcut.py index c436ab5d90578..1a7a3d6eba0e3 100644 --- a/pandas/tests/reshape/test_qcut.py +++ b/pandas/tests/reshape/test_qcut.py @@ -13,13 +13,13 @@ Series, TimedeltaIndex, Timestamp, + _testing as tm, cut, date_range, isna, qcut, timedelta_range, ) -import pandas._testing as tm from pandas.api.types import CategoricalDtype as CDT from pandas.core.algorithms import quantile diff --git a/pandas/tests/reshape/test_union_categoricals.py b/pandas/tests/reshape/test_union_categoricals.py index 8918d19e4ba7b..d1b5c4c68554a 100644 --- a/pandas/tests/reshape/test_union_categoricals.py +++ b/pandas/tests/reshape/test_union_categoricals.py @@ -4,8 +4,7 @@ from pandas.core.dtypes.concat import union_categoricals import pandas as pd -from pandas import Categorical, CategoricalIndex, Series -import pandas._testing as tm +from pandas import Categorical, CategoricalIndex, Series, _testing as tm class TestUnionCategoricals: diff --git a/pandas/tests/reshape/test_util.py b/pandas/tests/reshape/test_util.py index 9d074b5ade425..c70713c3b0a4c 100644 --- a/pandas/tests/reshape/test_util.py +++ b/pandas/tests/reshape/test_util.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Index, date_range -import pandas._testing as tm +from pandas import Index, _testing as tm, date_range from pandas.core.reshape.util import cartesian_product diff --git a/pandas/tests/scalar/interval/test_interval.py b/pandas/tests/scalar/interval/test_interval.py index a0151bb9ac7bf..3727ab4bc0dff 100644 --- a/pandas/tests/scalar/interval/test_interval.py +++ b/pandas/tests/scalar/interval/test_interval.py @@ -2,7 +2,7 @@ import pytest from pandas import Interval, Period, Timedelta, Timestamp -import pandas.core.common as com +from pandas.core import common as com @pytest.fixture diff --git a/pandas/tests/scalar/period/test_period.py b/pandas/tests/scalar/period/test_period.py index dcef0615121c1..654374cdfcdf3 100644 --- a/pandas/tests/scalar/period/test_period.py +++ b/pandas/tests/scalar/period/test_period.py @@ -12,8 +12,7 @@ from pandas.compat.numpy import np_datetime64_compat import pandas as pd -from pandas import NaT, Period, Timedelta, Timestamp, offsets -import pandas._testing as tm +from pandas import NaT, Period, Timedelta, Timestamp, _testing as tm, offsets class TestPeriodConstruction: diff --git a/pandas/tests/scalar/test_na_scalar.py b/pandas/tests/scalar/test_na_scalar.py index dc5eb15348c1b..6885bca3653bb 100644 --- a/pandas/tests/scalar/test_na_scalar.py +++ b/pandas/tests/scalar/test_na_scalar.py @@ -8,7 +8,7 @@ from pandas.core.dtypes.common import is_scalar import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_singleton(): diff --git a/pandas/tests/scalar/test_nat.py b/pandas/tests/scalar/test_nat.py index e1e2ea1a5cec8..2a0fe32d4e290 100644 --- a/pandas/tests/scalar/test_nat.py +++ b/pandas/tests/scalar/test_nat.py @@ -6,7 +6,6 @@ import pytz from pandas._libs.tslibs import iNaT -import pandas.compat as compat from pandas.core.dtypes.common import is_datetime64_any_dtype @@ -19,10 +18,11 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, + compat as compat, isna, offsets, ) -import pandas._testing as tm from pandas.core.arrays import DatetimeArray, PeriodArray, TimedeltaArray from pandas.core.ops import roperator diff --git a/pandas/tests/scalar/timedelta/test_arithmetic.py b/pandas/tests/scalar/timedelta/test_arithmetic.py index cb33f99d9bd91..bdc8b4bb81320 100644 --- a/pandas/tests/scalar/timedelta/test_arithmetic.py +++ b/pandas/tests/scalar/timedelta/test_arithmetic.py @@ -8,8 +8,15 @@ import pytest import pandas as pd -from pandas import NaT, Timedelta, Timestamp, _is_numpy_dev, compat, offsets -import pandas._testing as tm +from pandas import ( + NaT, + Timedelta, + Timestamp, + _is_numpy_dev, + _testing as tm, + compat, + offsets, +) from pandas.core import ops diff --git a/pandas/tests/scalar/timedelta/test_timedelta.py b/pandas/tests/scalar/timedelta/test_timedelta.py index a01921bd6c4c2..a29561b14fa48 100644 --- a/pandas/tests/scalar/timedelta/test_timedelta.py +++ b/pandas/tests/scalar/timedelta/test_timedelta.py @@ -7,8 +7,7 @@ from pandas._libs.tslibs import NaT, iNaT import pandas as pd -from pandas import Timedelta, TimedeltaIndex, offsets, to_timedelta -import pandas._testing as tm +from pandas import Timedelta, TimedeltaIndex, _testing as tm, offsets, to_timedelta class TestTimedeltaUnaryOps: diff --git a/pandas/tests/scalar/timestamp/test_arithmetic.py b/pandas/tests/scalar/timestamp/test_arithmetic.py index 954301b979074..32528030b0847 100644 --- a/pandas/tests/scalar/timestamp/test_arithmetic.py +++ b/pandas/tests/scalar/timestamp/test_arithmetic.py @@ -11,7 +11,7 @@ to_offset, ) -import pandas._testing as tm +from pandas import _testing as tm class TestTimestampArithmetic: diff --git a/pandas/tests/scalar/timestamp/test_comparisons.py b/pandas/tests/scalar/timestamp/test_comparisons.py index 71693a9ca61ce..74c17918b549c 100644 --- a/pandas/tests/scalar/timestamp/test_comparisons.py +++ b/pandas/tests/scalar/timestamp/test_comparisons.py @@ -4,8 +4,7 @@ import numpy as np import pytest -from pandas import Timestamp -import pandas._testing as tm +from pandas import Timestamp, _testing as tm class TestTimestampComparison: diff --git a/pandas/tests/scalar/timestamp/test_timestamp.py b/pandas/tests/scalar/timestamp/test_timestamp.py index cee7ac450e411..b0eb0c8b37d34 100644 --- a/pandas/tests/scalar/timestamp/test_timestamp.py +++ b/pandas/tests/scalar/timestamp/test_timestamp.py @@ -1,5 +1,4 @@ """ test the scalar Timestamp """ - import calendar from datetime import datetime, timedelta import locale @@ -13,10 +12,9 @@ from pandas._libs.tslibs.timezones import dateutil_gettz as gettz, get_timezone from pandas.compat.numpy import np_datetime64_compat -import pandas.util._test_decorators as td -from pandas import NaT, Timedelta, Timestamp -import pandas._testing as tm +from pandas import NaT, Timedelta, Timestamp, _testing as tm +from pandas.util import _test_decorators as td from pandas.tseries import offsets diff --git a/pandas/tests/scalar/timestamp/test_timezones.py b/pandas/tests/scalar/timestamp/test_timezones.py index 9611c827be6fe..2fb68a29db64c 100644 --- a/pandas/tests/scalar/timestamp/test_timezones.py +++ b/pandas/tests/scalar/timestamp/test_timezones.py @@ -11,9 +11,9 @@ from pandas._libs.tslibs import timezones from pandas.errors import OutOfBoundsDatetime -import pandas.util._test_decorators as td from pandas import NaT, Timestamp +from pandas.util import _test_decorators as td class TestTimestampTZOperations: diff --git a/pandas/tests/scalar/timestamp/test_unary_ops.py b/pandas/tests/scalar/timestamp/test_unary_ops.py index 8641bbd0a66f2..1f71f4be5459e 100644 --- a/pandas/tests/scalar/timestamp/test_unary_ops.py +++ b/pandas/tests/scalar/timestamp/test_unary_ops.py @@ -7,9 +7,9 @@ from pandas._libs.tslibs import NaT, Timestamp, conversion, to_offset from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG -import pandas.util._test_decorators as td -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td class TestTimestampUnaryOps: diff --git a/pandas/tests/series/conftest.py b/pandas/tests/series/conftest.py index 87aefec559311..91b09b1d1bbc1 100644 --- a/pandas/tests/series/conftest.py +++ b/pandas/tests/series/conftest.py @@ -1,6 +1,6 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm @pytest.fixture diff --git a/pandas/tests/series/indexing/test_alter_index.py b/pandas/tests/series/indexing/test_alter_index.py index 0415434f01fcf..ae77d81111724 100644 --- a/pandas/tests/series/indexing/test_alter_index.py +++ b/pandas/tests/series/indexing/test_alter_index.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Categorical, Series, date_range, isna -import pandas._testing as tm +from pandas import Categorical, Series, _testing as tm, date_range, isna def test_reindex(datetime_series, string_series): diff --git a/pandas/tests/series/indexing/test_boolean.py b/pandas/tests/series/indexing/test_boolean.py index e2b71b1f2f412..f85ee757c76c8 100644 --- a/pandas/tests/series/indexing/test_boolean.py +++ b/pandas/tests/series/indexing/test_boolean.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm from pandas.core.indexing import IndexingError from pandas.tseries.offsets import BDay diff --git a/pandas/tests/series/indexing/test_callable.py b/pandas/tests/series/indexing/test_callable.py index fe575cf146641..f469095e60ed6 100644 --- a/pandas/tests/series/indexing/test_callable.py +++ b/pandas/tests/series/indexing/test_callable.py @@ -1,5 +1,5 @@ import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_getitem_callable(): diff --git a/pandas/tests/series/indexing/test_datetime.py b/pandas/tests/series/indexing/test_datetime.py index 0b34fab7b80b1..a8b2626b6612b 100644 --- a/pandas/tests/series/indexing/test_datetime.py +++ b/pandas/tests/series/indexing/test_datetime.py @@ -4,13 +4,18 @@ import numpy as np import pytest -from pandas._libs import iNaT -import pandas._libs.index as _index +from pandas._libs import iNaT, index as _index import pandas as pd -from pandas import DataFrame, DatetimeIndex, NaT, Series, Timestamp, date_range -import pandas._testing as tm - +from pandas import ( + DataFrame, + DatetimeIndex, + NaT, + Series, + Timestamp, + _testing as tm, + date_range, +) """ Also test support for datetime64[ns] in Series / DataFrame @@ -166,6 +171,7 @@ def test_getitem_setitem_datetime_tz_pytz(): def test_getitem_setitem_datetime_tz_dateutil(): from dateutil.tz import tzutc + from pandas._libs.tslibs.timezones import dateutil_gettz as gettz tz = ( diff --git a/pandas/tests/series/indexing/test_delitem.py b/pandas/tests/series/indexing/test_delitem.py index 6c7e3f2b06983..e55a4cef5ce46 100644 --- a/pandas/tests/series/indexing/test_delitem.py +++ b/pandas/tests/series/indexing/test_delitem.py @@ -1,7 +1,6 @@ import pytest -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm class TestSeriesDelItem: diff --git a/pandas/tests/series/indexing/test_get.py b/pandas/tests/series/indexing/test_get.py index 3371c47fa1b0a..9cb695a87b708 100644 --- a/pandas/tests/series/indexing/test_get.py +++ b/pandas/tests/series/indexing/test_get.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def test_get(): diff --git a/pandas/tests/series/indexing/test_getitem.py b/pandas/tests/series/indexing/test_getitem.py index 6b7cda89a4714..65ef83ca13574 100644 --- a/pandas/tests/series/indexing/test_getitem.py +++ b/pandas/tests/series/indexing/test_getitem.py @@ -9,8 +9,7 @@ from pandas._libs.tslibs import conversion, timezones import pandas as pd -from pandas import Series, Timestamp, date_range, period_range -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, date_range, period_range class TestSeriesGetitemScalars: diff --git a/pandas/tests/series/indexing/test_iloc.py b/pandas/tests/series/indexing/test_iloc.py index f276eb5b0b23d..6e6b5391fb4c2 100644 --- a/pandas/tests/series/indexing/test_iloc.py +++ b/pandas/tests/series/indexing/test_iloc.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def test_iloc(): diff --git a/pandas/tests/series/indexing/test_indexing.py b/pandas/tests/series/indexing/test_indexing.py index 737e21af9242f..93d86079bee9a 100644 --- a/pandas/tests/series/indexing/test_indexing.py +++ b/pandas/tests/series/indexing/test_indexing.py @@ -1,5 +1,4 @@ """ test get/set & misc """ - from datetime import timedelta import numpy as np @@ -16,11 +15,11 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, period_range, timedelta_range, ) -import pandas._testing as tm from pandas.tseries.offsets import BDay diff --git a/pandas/tests/series/indexing/test_loc.py b/pandas/tests/series/indexing/test_loc.py index 368adcfb32215..66317c874ea2d 100644 --- a/pandas/tests/series/indexing/test_loc.py +++ b/pandas/tests/series/indexing/test_loc.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Series, Timestamp -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm @pytest.mark.parametrize("val,expected", [(2 ** 63 - 1, 3), (2 ** 63, 4)]) diff --git a/pandas/tests/series/indexing/test_mask.py b/pandas/tests/series/indexing/test_mask.py index dc4fb530dbb52..9eecdd1557724 100644 --- a/pandas/tests/series/indexing/test_mask.py +++ b/pandas/tests/series/indexing/test_mask.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def test_mask(): diff --git a/pandas/tests/series/indexing/test_numeric.py b/pandas/tests/series/indexing/test_numeric.py index b5bef46e95ec2..74d421e8574d2 100644 --- a/pandas/tests/series/indexing/test_numeric.py +++ b/pandas/tests/series/indexing/test_numeric.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, Series -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm def test_slice_float64(): diff --git a/pandas/tests/series/indexing/test_take.py b/pandas/tests/series/indexing/test_take.py index dc161b6be5d66..ee81286c44859 100644 --- a/pandas/tests/series/indexing/test_take.py +++ b/pandas/tests/series/indexing/test_take.py @@ -1,8 +1,7 @@ import pytest import pandas as pd -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def test_take(): diff --git a/pandas/tests/series/indexing/test_where.py b/pandas/tests/series/indexing/test_where.py index c4a2cb90f7090..bcd199ad2e6af 100644 --- a/pandas/tests/series/indexing/test_where.py +++ b/pandas/tests/series/indexing/test_where.py @@ -4,8 +4,7 @@ from pandas.core.dtypes.common import is_integer import pandas as pd -from pandas import Series, Timestamp, date_range, isna -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, date_range, isna def test_where_unsafe_int(sint_dtype): diff --git a/pandas/tests/series/methods/test_align.py b/pandas/tests/series/methods/test_align.py index 974ba5d1e35a7..3f7cdcf2b77ef 100644 --- a/pandas/tests/series/methods/test_align.py +++ b/pandas/tests/series/methods/test_align.py @@ -3,8 +3,7 @@ import pytz import pandas as pd -from pandas import Series, date_range, period_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range, period_range @pytest.mark.parametrize( diff --git a/pandas/tests/series/methods/test_append.py b/pandas/tests/series/methods/test_append.py index 82bde7c233626..7b81934361d12 100644 --- a/pandas/tests/series/methods/test_append.py +++ b/pandas/tests/series/methods/test_append.py @@ -2,8 +2,15 @@ import pytest import pandas as pd -from pandas import DataFrame, DatetimeIndex, Index, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Index, + Series, + Timestamp, + _testing as tm, + date_range, +) class TestSeriesAppend: diff --git a/pandas/tests/series/methods/test_argsort.py b/pandas/tests/series/methods/test_argsort.py index 4353eb4c8cd64..5b3cfdea814f6 100644 --- a/pandas/tests/series/methods/test_argsort.py +++ b/pandas/tests/series/methods/test_argsort.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series, Timestamp, isna -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, isna class TestSeriesArgsort: diff --git a/pandas/tests/series/methods/test_asfreq.py b/pandas/tests/series/methods/test_asfreq.py index cd61c510c75f5..e2eabea1ac48d 100644 --- a/pandas/tests/series/methods/test_asfreq.py +++ b/pandas/tests/series/methods/test_asfreq.py @@ -3,8 +3,14 @@ import numpy as np import pytest -from pandas import DataFrame, DatetimeIndex, Series, date_range, period_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Series, + _testing as tm, + date_range, + period_range, +) from pandas.tseries.offsets import BDay, BMonthEnd diff --git a/pandas/tests/series/methods/test_asof.py b/pandas/tests/series/methods/test_asof.py index 19caf4eccf748..2ac8225b12f37 100644 --- a/pandas/tests/series/methods/test_asof.py +++ b/pandas/tests/series/methods/test_asof.py @@ -3,8 +3,7 @@ from pandas._libs.tslibs import IncompatibleFrequency -from pandas import Series, Timestamp, date_range, isna, notna, offsets -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, date_range, isna, notna, offsets class TestSeriesAsof: @@ -90,7 +89,7 @@ def test_with_nan(self): tm.assert_series_equal(result, expected) def test_periodindex(self): - from pandas import period_range, PeriodIndex + from pandas import PeriodIndex, period_range # array or list or dates N = 50 diff --git a/pandas/tests/series/methods/test_astype.py b/pandas/tests/series/methods/test_astype.py index 9fdc4179de2e1..efe09bfb651d1 100644 --- a/pandas/tests/series/methods/test_astype.py +++ b/pandas/tests/series/methods/test_astype.py @@ -1,5 +1,4 @@ -from pandas import Series, date_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range class TestAstype: diff --git a/pandas/tests/series/methods/test_at_time.py b/pandas/tests/series/methods/test_at_time.py index 810e4c1446708..433e05e0e5a72 100644 --- a/pandas/tests/series/methods/test_at_time.py +++ b/pandas/tests/series/methods/test_at_time.py @@ -5,8 +5,7 @@ from pandas._libs.tslibs import timezones -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range class TestAtTime: diff --git a/pandas/tests/series/methods/test_between.py b/pandas/tests/series/methods/test_between.py index 350a3fe6ff009..957895a2844e6 100644 --- a/pandas/tests/series/methods/test_between.py +++ b/pandas/tests/series/methods/test_between.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Series, bdate_range, date_range, period_range -import pandas._testing as tm +from pandas import Series, _testing as tm, bdate_range, date_range, period_range class TestBetween: diff --git a/pandas/tests/series/methods/test_between_time.py b/pandas/tests/series/methods/test_between_time.py index e9d2f8e6f1637..73826d519fcff 100644 --- a/pandas/tests/series/methods/test_between_time.py +++ b/pandas/tests/series/methods/test_between_time.py @@ -5,10 +5,9 @@ import pytest from pandas._libs.tslibs import timezones -import pandas.util._test_decorators as td -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range +from pandas.util import _test_decorators as td class TestBetweenTime: diff --git a/pandas/tests/series/methods/test_clip.py b/pandas/tests/series/methods/test_clip.py index 37764d3b82c2d..e20856d7da165 100644 --- a/pandas/tests/series/methods/test_clip.py +++ b/pandas/tests/series/methods/test_clip.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Series, Timestamp, isna, notna -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, isna, notna class TestSeriesClip: diff --git a/pandas/tests/series/methods/test_combine.py b/pandas/tests/series/methods/test_combine.py index 75d47e3daa103..2cde1a669eba6 100644 --- a/pandas/tests/series/methods/test_combine.py +++ b/pandas/tests/series/methods/test_combine.py @@ -1,5 +1,4 @@ -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm class TestCombine: diff --git a/pandas/tests/series/methods/test_combine_first.py b/pandas/tests/series/methods/test_combine_first.py index 1ee55fbe39513..6e3c4edb94212 100644 --- a/pandas/tests/series/methods/test_combine_first.py +++ b/pandas/tests/series/methods/test_combine_first.py @@ -3,8 +3,7 @@ import numpy as np import pandas as pd -from pandas import Period, Series, date_range, period_range, to_datetime -import pandas._testing as tm +from pandas import Period, Series, _testing as tm, date_range, period_range, to_datetime class TestCombineFirst: diff --git a/pandas/tests/series/methods/test_compare.py b/pandas/tests/series/methods/test_compare.py index 8570800048898..908db844634ec 100644 --- a/pandas/tests/series/methods/test_compare.py +++ b/pandas/tests/series/methods/test_compare.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @pytest.mark.parametrize("align_axis", [0, 1, "index", "columns"]) diff --git a/pandas/tests/series/methods/test_convert_dtypes.py b/pandas/tests/series/methods/test_convert_dtypes.py index dd4bf642e68e8..52e9dd43742a2 100644 --- a/pandas/tests/series/methods/test_convert_dtypes.py +++ b/pandas/tests/series/methods/test_convert_dtypes.py @@ -6,7 +6,7 @@ from pandas.core.dtypes.common import is_interval_dtype import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestSeriesConvertDtypes: diff --git a/pandas/tests/series/methods/test_count.py b/pandas/tests/series/methods/test_count.py index 1ca48eeb7c441..299d32da4a1b8 100644 --- a/pandas/tests/series/methods/test_count.py +++ b/pandas/tests/series/methods/test_count.py @@ -1,8 +1,7 @@ import numpy as np import pandas as pd -from pandas import Categorical, MultiIndex, Series -import pandas._testing as tm +from pandas import Categorical, MultiIndex, Series, _testing as tm class TestSeriesCount: diff --git a/pandas/tests/series/methods/test_cov_corr.py b/pandas/tests/series/methods/test_cov_corr.py index 282f499506aae..0e769d24646f2 100644 --- a/pandas/tests/series/methods/test_cov_corr.py +++ b/pandas/tests/series/methods/test_cov_corr.py @@ -3,11 +3,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import Series, isna -import pandas._testing as tm +from pandas import Series, _testing as tm, isna +from pandas.util import _test_decorators as td class TestSeriesCov: @@ -55,7 +53,7 @@ def test_cov_ddof(self, test_ddof): class TestSeriesCorr: @td.skip_if_no_scipy def test_corr(self, datetime_series): - import scipy.stats as stats + from scipy import stats as stats # full overlap tm.assert_almost_equal(datetime_series.corr(datetime_series), 1) @@ -85,7 +83,7 @@ def test_corr(self, datetime_series): @td.skip_if_no_scipy def test_corr_rank(self): - import scipy.stats as stats + from scipy import stats as stats # kendall and spearman A = tm.makeTimeSeries() diff --git a/pandas/tests/series/methods/test_describe.py b/pandas/tests/series/methods/test_describe.py index 4e59c6995f4f2..1b403c3b4e577 100644 --- a/pandas/tests/series/methods/test_describe.py +++ b/pandas/tests/series/methods/test_describe.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Period, Series, Timedelta, Timestamp, date_range -import pandas._testing as tm +from pandas import Period, Series, Timedelta, Timestamp, _testing as tm, date_range class TestSeriesDescribe: diff --git a/pandas/tests/series/methods/test_diff.py b/pandas/tests/series/methods/test_diff.py index 033f75e95f11b..757c687feb212 100644 --- a/pandas/tests/series/methods/test_diff.py +++ b/pandas/tests/series/methods/test_diff.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series, TimedeltaIndex, date_range -import pandas._testing as tm +from pandas import Series, TimedeltaIndex, _testing as tm, date_range class TestSeriesDiff: diff --git a/pandas/tests/series/methods/test_drop.py b/pandas/tests/series/methods/test_drop.py index 197fe9ff68df2..738c5d7280f61 100644 --- a/pandas/tests/series/methods/test_drop.py +++ b/pandas/tests/series/methods/test_drop.py @@ -1,8 +1,7 @@ import pytest import pandas as pd -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/series/methods/test_drop_duplicates.py b/pandas/tests/series/methods/test_drop_duplicates.py index a4532ebb3d8c5..ea8f86c07b389 100644 --- a/pandas/tests/series/methods/test_drop_duplicates.py +++ b/pandas/tests/series/methods/test_drop_duplicates.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Categorical, Series -import pandas._testing as tm +from pandas import Categorical, Series, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/series/methods/test_droplevel.py b/pandas/tests/series/methods/test_droplevel.py index 449ddd1cd0e49..4e4d38b560630 100644 --- a/pandas/tests/series/methods/test_droplevel.py +++ b/pandas/tests/series/methods/test_droplevel.py @@ -1,7 +1,6 @@ import pytest -from pandas import MultiIndex, Series -import pandas._testing as tm +from pandas import MultiIndex, Series, _testing as tm class TestDropLevel: diff --git a/pandas/tests/series/methods/test_duplicated.py b/pandas/tests/series/methods/test_duplicated.py index 5cc297913e851..13d428a4c0b0e 100644 --- a/pandas/tests/series/methods/test_duplicated.py +++ b/pandas/tests/series/methods/test_duplicated.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/series/methods/test_explode.py b/pandas/tests/series/methods/test_explode.py index 4b65e042f7b02..d24ccef7fa9fa 100644 --- a/pandas/tests/series/methods/test_explode.py +++ b/pandas/tests/series/methods/test_explode.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def test_basic(): diff --git a/pandas/tests/series/methods/test_fillna.py b/pandas/tests/series/methods/test_fillna.py index c34838be24fc1..ca1549fb42a25 100644 --- a/pandas/tests/series/methods/test_fillna.py +++ b/pandas/tests/series/methods/test_fillna.py @@ -3,8 +3,16 @@ import numpy as np import pytest -from pandas import Categorical, DataFrame, NaT, Period, Series, Timedelta, Timestamp -import pandas._testing as tm +from pandas import ( + Categorical, + DataFrame, + NaT, + Period, + Series, + Timedelta, + Timestamp, + _testing as tm, +) class TestSeriesFillNA: diff --git a/pandas/tests/series/methods/test_first_and_last.py b/pandas/tests/series/methods/test_first_and_last.py index 7629dc8cda30b..b4590d33c1f00 100644 --- a/pandas/tests/series/methods/test_first_and_last.py +++ b/pandas/tests/series/methods/test_first_and_last.py @@ -1,12 +1,10 @@ """ Note: includes tests for `last` """ - import numpy as np import pytest -from pandas import Series, date_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range class TestFirst: diff --git a/pandas/tests/series/methods/test_head_tail.py b/pandas/tests/series/methods/test_head_tail.py index d9f8d85eda350..2db04a88a8efa 100644 --- a/pandas/tests/series/methods/test_head_tail.py +++ b/pandas/tests/series/methods/test_head_tail.py @@ -1,4 +1,4 @@ -import pandas._testing as tm +from pandas import _testing as tm def test_head_tail(string_series): diff --git a/pandas/tests/series/methods/test_interpolate.py b/pandas/tests/series/methods/test_interpolate.py index c4b10e0ccdc3e..af457452b32a5 100644 --- a/pandas/tests/series/methods/test_interpolate.py +++ b/pandas/tests/series/methods/test_interpolate.py @@ -1,11 +1,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import Index, MultiIndex, Series, date_range, isna -import pandas._testing as tm +from pandas import Index, MultiIndex, Series, _testing as tm, date_range, isna +from pandas.util import _test_decorators as td @pytest.fixture( diff --git a/pandas/tests/series/methods/test_isin.py b/pandas/tests/series/methods/test_isin.py index 3836c1d56bf87..414e95616e537 100644 --- a/pandas/tests/series/methods/test_isin.py +++ b/pandas/tests/series/methods/test_isin.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Series, date_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range class TestSeriesIsIn: diff --git a/pandas/tests/series/methods/test_nlargest.py b/pandas/tests/series/methods/test_nlargest.py index b1aa09f387a13..4ebd94d12b7e0 100644 --- a/pandas/tests/series/methods/test_nlargest.py +++ b/pandas/tests/series/methods/test_nlargest.py @@ -8,8 +8,7 @@ import pytest import pandas as pd -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm main_dtypes = [ "datetime", diff --git a/pandas/tests/series/methods/test_pct_change.py b/pandas/tests/series/methods/test_pct_change.py index 1efb57894f986..8af7d3f4028eb 100644 --- a/pandas/tests/series/methods/test_pct_change.py +++ b/pandas/tests/series/methods/test_pct_change.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Series, date_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range class TestSeriesPctChange: diff --git a/pandas/tests/series/methods/test_quantile.py b/pandas/tests/series/methods/test_quantile.py index 79f50afca658f..115449d988d43 100644 --- a/pandas/tests/series/methods/test_quantile.py +++ b/pandas/tests/series/methods/test_quantile.py @@ -4,8 +4,7 @@ from pandas.core.dtypes.common import is_integer import pandas as pd -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm from pandas.core.indexes.datetimes import Timestamp diff --git a/pandas/tests/series/methods/test_rank.py b/pandas/tests/series/methods/test_rank.py index 6d3c37659f5c4..bef93fd61d73d 100644 --- a/pandas/tests/series/methods/test_rank.py +++ b/pandas/tests/series/methods/test_rank.py @@ -5,11 +5,10 @@ from pandas._libs import iNaT from pandas._libs.algos import Infinity, NegInfinity -import pandas.util._test_decorators as td -from pandas import NaT, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import NaT, Series, Timestamp, _testing as tm, date_range from pandas.api.types import CategoricalDtype +from pandas.util import _test_decorators as td class TestSeriesRank: diff --git a/pandas/tests/series/methods/test_reindex_like.py b/pandas/tests/series/methods/test_reindex_like.py index 7f24c778feb1b..a5b450d2284b7 100644 --- a/pandas/tests/series/methods/test_reindex_like.py +++ b/pandas/tests/series/methods/test_reindex_like.py @@ -2,8 +2,7 @@ import numpy as np -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def test_reindex_like(datetime_series): diff --git a/pandas/tests/series/methods/test_rename.py b/pandas/tests/series/methods/test_rename.py index ac07fed7c951a..52543a6a50df9 100644 --- a/pandas/tests/series/methods/test_rename.py +++ b/pandas/tests/series/methods/test_rename.py @@ -2,8 +2,7 @@ import numpy as np -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm class TestRename: diff --git a/pandas/tests/series/methods/test_rename_axis.py b/pandas/tests/series/methods/test_rename_axis.py index b519dd1144493..bcae7a0f237d3 100644 --- a/pandas/tests/series/methods/test_rename_axis.py +++ b/pandas/tests/series/methods/test_rename_axis.py @@ -1,7 +1,6 @@ import pytest -from pandas import Index, MultiIndex, Series -import pandas._testing as tm +from pandas import Index, MultiIndex, Series, _testing as tm class TestSeriesRenameAxis: diff --git a/pandas/tests/series/methods/test_replace.py b/pandas/tests/series/methods/test_replace.py index 8f57cf3191d5d..8c87c9ce43451 100644 --- a/pandas/tests/series/methods/test_replace.py +++ b/pandas/tests/series/methods/test_replace.py @@ -2,7 +2,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestSeriesReplace: diff --git a/pandas/tests/series/methods/test_reset_index.py b/pandas/tests/series/methods/test_reset_index.py index 597b43a370ef5..d06a1a93adf03 100644 --- a/pandas/tests/series/methods/test_reset_index.py +++ b/pandas/tests/series/methods/test_reset_index.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, RangeIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, RangeIndex, Series, _testing as tm class TestResetIndex: diff --git a/pandas/tests/series/methods/test_round.py b/pandas/tests/series/methods/test_round.py index 88d5c428712dc..67495ddadbb11 100644 --- a/pandas/tests/series/methods/test_round.py +++ b/pandas/tests/series/methods/test_round.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm class TestSeriesRound: diff --git a/pandas/tests/series/methods/test_searchsorted.py b/pandas/tests/series/methods/test_searchsorted.py index 5a6ec0039c7cd..87e14a50e17f9 100644 --- a/pandas/tests/series/methods/test_searchsorted.py +++ b/pandas/tests/series/methods/test_searchsorted.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Series, Timestamp, date_range -import pandas._testing as tm +from pandas import Series, Timestamp, _testing as tm, date_range from pandas.api.types import is_scalar diff --git a/pandas/tests/series/methods/test_shift.py b/pandas/tests/series/methods/test_shift.py index da6407c73104c..c1c67a44b6a9d 100644 --- a/pandas/tests/series/methods/test_shift.py +++ b/pandas/tests/series/methods/test_shift.py @@ -10,10 +10,10 @@ NaT, Series, TimedeltaIndex, + _testing as tm, date_range, offsets, ) -import pandas._testing as tm from pandas.tseries.offsets import BDay diff --git a/pandas/tests/series/methods/test_sort_index.py b/pandas/tests/series/methods/test_sort_index.py index 6c6be1506255a..fcaba2997c14d 100644 --- a/pandas/tests/series/methods/test_sort_index.py +++ b/pandas/tests/series/methods/test_sort_index.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DatetimeIndex, IntervalIndex, MultiIndex, Series -import pandas._testing as tm +from pandas import DatetimeIndex, IntervalIndex, MultiIndex, Series, _testing as tm class TestSeriesSortIndex: diff --git a/pandas/tests/series/methods/test_sort_values.py b/pandas/tests/series/methods/test_sort_values.py index b32c59b4daa0d..55f28319a3d8b 100644 --- a/pandas/tests/series/methods/test_sort_values.py +++ b/pandas/tests/series/methods/test_sort_values.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Categorical, DataFrame, Series -import pandas._testing as tm +from pandas import Categorical, DataFrame, Series, _testing as tm class TestSeriesSortValues: diff --git a/pandas/tests/series/methods/test_to_dict.py b/pandas/tests/series/methods/test_to_dict.py index 47badb0a1bb52..6d1f7057a8082 100644 --- a/pandas/tests/series/methods/test_to_dict.py +++ b/pandas/tests/series/methods/test_to_dict.py @@ -2,8 +2,7 @@ import pytest -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm class TestSeriesToDict: diff --git a/pandas/tests/series/methods/test_to_period.py b/pandas/tests/series/methods/test_to_period.py index b40fc81931e20..f95aad52514c3 100644 --- a/pandas/tests/series/methods/test_to_period.py +++ b/pandas/tests/series/methods/test_to_period.py @@ -6,10 +6,10 @@ DatetimeIndex, PeriodIndex, Series, + _testing as tm, date_range, period_range, ) -import pandas._testing as tm class TestToPeriod: diff --git a/pandas/tests/series/methods/test_to_timestamp.py b/pandas/tests/series/methods/test_to_timestamp.py index 13a2042a2f639..0c71ae48ca08f 100644 --- a/pandas/tests/series/methods/test_to_timestamp.py +++ b/pandas/tests/series/methods/test_to_timestamp.py @@ -2,8 +2,15 @@ import pytest -from pandas import PeriodIndex, Series, Timedelta, date_range, period_range, to_datetime -import pandas._testing as tm +from pandas import ( + PeriodIndex, + Series, + Timedelta, + _testing as tm, + date_range, + period_range, + to_datetime, +) class TestToTimestamp: diff --git a/pandas/tests/series/methods/test_truncate.py b/pandas/tests/series/methods/test_truncate.py index 8a2c62cee7e24..5164f74aa21da 100644 --- a/pandas/tests/series/methods/test_truncate.py +++ b/pandas/tests/series/methods/test_truncate.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Series, date_range -import pandas._testing as tm +from pandas import Series, _testing as tm, date_range from pandas.tseries.offsets import BDay diff --git a/pandas/tests/series/methods/test_tz_convert.py b/pandas/tests/series/methods/test_tz_convert.py index ce348d5323e62..da7fbe66cc4ff 100644 --- a/pandas/tests/series/methods/test_tz_convert.py +++ b/pandas/tests/series/methods/test_tz_convert.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DatetimeIndex, Series, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, Series, _testing as tm, date_range class TestTZConvert: diff --git a/pandas/tests/series/methods/test_tz_localize.py b/pandas/tests/series/methods/test_tz_localize.py index 532b8d16f0d5c..4a88b4688f573 100644 --- a/pandas/tests/series/methods/test_tz_localize.py +++ b/pandas/tests/series/methods/test_tz_localize.py @@ -3,8 +3,7 @@ from pandas._libs.tslibs import timezones -from pandas import DatetimeIndex, NaT, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import DatetimeIndex, NaT, Series, Timestamp, _testing as tm, date_range class TestTZLocalize: diff --git a/pandas/tests/series/methods/test_unstack.py b/pandas/tests/series/methods/test_unstack.py index cdf6a16e88ad0..50d9a7fbd59c1 100644 --- a/pandas/tests/series/methods/test_unstack.py +++ b/pandas/tests/series/methods/test_unstack.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm def test_unstack(): diff --git a/pandas/tests/series/methods/test_update.py b/pandas/tests/series/methods/test_update.py index d00a4299cb690..6bce0442c0d68 100644 --- a/pandas/tests/series/methods/test_update.py +++ b/pandas/tests/series/methods/test_update.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import CategoricalDtype, DataFrame, NaT, Series, Timestamp -import pandas._testing as tm +from pandas import CategoricalDtype, DataFrame, NaT, Series, Timestamp, _testing as tm class TestUpdate: diff --git a/pandas/tests/series/methods/test_value_counts.py b/pandas/tests/series/methods/test_value_counts.py index f97362ce9c2a9..2906546d6bfea 100644 --- a/pandas/tests/series/methods/test_value_counts.py +++ b/pandas/tests/series/methods/test_value_counts.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Categorical, CategoricalIndex, Series -import pandas._testing as tm +from pandas import Categorical, CategoricalIndex, Series, _testing as tm class TestSeriesValueCounts: diff --git a/pandas/tests/series/test_alter_axes.py b/pandas/tests/series/test_alter_axes.py index 203750757e28d..caac7688fa87e 100644 --- a/pandas/tests/series/test_alter_axes.py +++ b/pandas/tests/series/test_alter_axes.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import Index, Series -import pandas._testing as tm +from pandas import Index, Series, _testing as tm class TestSeriesAlterAxes: diff --git a/pandas/tests/series/test_analytics.py b/pandas/tests/series/test_analytics.py index ab8618eb0a7d4..05c09c041ab7b 100644 --- a/pandas/tests/series/test_analytics.py +++ b/pandas/tests/series/test_analytics.py @@ -3,11 +3,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm +from pandas.util import _test_decorators as td class TestSeriesAnalytics: diff --git a/pandas/tests/series/test_api.py b/pandas/tests/series/test_api.py index 042841bb4e019..5c1468c9321d7 100644 --- a/pandas/tests/series/test_api.py +++ b/pandas/tests/series/test_api.py @@ -17,14 +17,14 @@ Timedelta, TimedeltaIndex, Timestamp, + _testing as tm, date_range, period_range, timedelta_range, ) -import pandas._testing as tm from pandas.core.arrays import PeriodArray -import pandas.io.formats.printing as printing +from pandas.io.formats import printing as printing class TestSeriesMisc: diff --git a/pandas/tests/series/test_apply.py b/pandas/tests/series/test_apply.py index 308398642895c..a50cb93e7ed58 100644 --- a/pandas/tests/series/test_apply.py +++ b/pandas/tests/series/test_apply.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, isna -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, isna from pandas.core.base import SpecificationError diff --git a/pandas/tests/series/test_arithmetic.py b/pandas/tests/series/test_arithmetic.py index 5c8a0d224c4f9..abd4da7980e24 100644 --- a/pandas/tests/series/test_arithmetic.py +++ b/pandas/tests/series/test_arithmetic.py @@ -8,8 +8,15 @@ from pandas._libs.tslibs import IncompatibleFrequency import pandas as pd -from pandas import Categorical, Index, Series, bdate_range, date_range, isna -import pandas._testing as tm +from pandas import ( + Categorical, + Index, + Series, + _testing as tm, + bdate_range, + date_range, + isna, +) from pandas.core import nanops, ops @@ -195,8 +202,8 @@ def test_add_with_duplicate_index(self): tm.assert_series_equal(result, expected) def test_add_na_handling(self): - from decimal import Decimal from datetime import date + from decimal import Decimal s = Series( [Decimal("1.3"), Decimal("2.3")], index=[date(2012, 1, 1), date(2012, 1, 2)] diff --git a/pandas/tests/series/test_constructors.py b/pandas/tests/series/test_constructors.py index 1dd410ad02ee0..96b940bfab9a2 100644 --- a/pandas/tests/series/test_constructors.py +++ b/pandas/tests/series/test_constructors.py @@ -2,7 +2,7 @@ from datetime import datetime, timedelta import numpy as np -import numpy.ma as ma +from numpy import ma as ma import pytest from pandas._libs import iNaT, lib @@ -20,12 +20,12 @@ NaT, Series, Timestamp, + _testing as tm, date_range, isna, period_range, timedelta_range, ) -import pandas._testing as tm from pandas.core.arrays import IntervalArray, period_array diff --git a/pandas/tests/series/test_cumulative.py b/pandas/tests/series/test_cumulative.py index 0b4c5f091106a..723573e0252e4 100644 --- a/pandas/tests/series/test_cumulative.py +++ b/pandas/tests/series/test_cumulative.py @@ -11,7 +11,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm def _check_accum_op(name, series, check_dtype=True): diff --git a/pandas/tests/series/test_datetime_values.py b/pandas/tests/series/test_datetime_values.py index 0fd51b8828bc5..57c55f6226c95 100644 --- a/pandas/tests/series/test_datetime_values.py +++ b/pandas/tests/series/test_datetime_values.py @@ -19,13 +19,13 @@ PeriodIndex, Series, TimedeltaIndex, + _testing as tm, date_range, period_range, timedelta_range, ) -import pandas._testing as tm +from pandas.core import common as com from pandas.core.arrays import PeriodArray -import pandas.core.common as com class TestSeriesDatetimeValues: diff --git a/pandas/tests/series/test_dtypes.py b/pandas/tests/series/test_dtypes.py index bcc0b18134dad..68cbe07bb2235 100644 --- a/pandas/tests/series/test_dtypes.py +++ b/pandas/tests/series/test_dtypes.py @@ -18,9 +18,9 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, ) -import pandas._testing as tm class TestSeriesDtypes: diff --git a/pandas/tests/series/test_duplicates.py b/pandas/tests/series/test_duplicates.py index 89181a08819b1..42307d7b4b9e8 100644 --- a/pandas/tests/series/test_duplicates.py +++ b/pandas/tests/series/test_duplicates.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Categorical, Series -import pandas._testing as tm +from pandas import Categorical, Series, _testing as tm from pandas.core.construction import create_series_with_explicit_dtype diff --git a/pandas/tests/series/test_internals.py b/pandas/tests/series/test_internals.py index 51410fce7efae..5c409a90a8d30 100644 --- a/pandas/tests/series/test_internals.py +++ b/pandas/tests/series/test_internals.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import NaT, Series, Timestamp -import pandas._testing as tm +from pandas import NaT, Series, Timestamp, _testing as tm from pandas.core.internals.blocks import IntBlock diff --git a/pandas/tests/series/test_io.py b/pandas/tests/series/test_io.py index 708118e950686..6e39b1c0005dd 100644 --- a/pandas/tests/series/test_io.py +++ b/pandas/tests/series/test_io.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.io.common import get_handle diff --git a/pandas/tests/series/test_missing.py b/pandas/tests/series/test_missing.py index 162778e372426..1344520534303 100644 --- a/pandas/tests/series/test_missing.py +++ b/pandas/tests/series/test_missing.py @@ -16,10 +16,10 @@ Series, Timedelta, Timestamp, + _testing as tm, date_range, isna, ) -import pandas._testing as tm class TestSeriesMissingData: diff --git a/pandas/tests/series/test_operators.py b/pandas/tests/series/test_operators.py index e1c9682329271..9d7554f57f89e 100644 --- a/pandas/tests/series/test_operators.py +++ b/pandas/tests/series/test_operators.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, bdate_range -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm, bdate_range from pandas.core import ops diff --git a/pandas/tests/series/test_period.py b/pandas/tests/series/test_period.py index b54c09e5750fd..3595d399bb9c1 100644 --- a/pandas/tests/series/test_period.py +++ b/pandas/tests/series/test_period.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Period, Series, period_range -import pandas._testing as tm +from pandas import DataFrame, Period, Series, _testing as tm, period_range from pandas.core.arrays import PeriodArray diff --git a/pandas/tests/series/test_repr.py b/pandas/tests/series/test_repr.py index b861b37b49f89..ec9d258648d55 100644 --- a/pandas/tests/series/test_repr.py +++ b/pandas/tests/series/test_repr.py @@ -10,12 +10,12 @@ Index, MultiIndex, Series, + _testing as tm, date_range, option_context, period_range, timedelta_range, ) -import pandas._testing as tm class TestSeriesRepr: diff --git a/pandas/tests/series/test_subclass.py b/pandas/tests/series/test_subclass.py index a596ed49c1df2..6b37c68e6b93d 100644 --- a/pandas/tests/series/test_subclass.py +++ b/pandas/tests/series/test_subclass.py @@ -1,7 +1,7 @@ import numpy as np import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm class TestSeriesSubclassing: diff --git a/pandas/tests/series/test_timeseries.py b/pandas/tests/series/test_timeseries.py index 15b6481c08a61..6c5f37fdb0a23 100644 --- a/pandas/tests/series/test_timeseries.py +++ b/pandas/tests/series/test_timeseries.py @@ -2,8 +2,14 @@ import pytest import pandas as pd -from pandas import DataFrame, DatetimeIndex, Series, date_range, timedelta_range -import pandas._testing as tm +from pandas import ( + DataFrame, + DatetimeIndex, + Series, + _testing as tm, + date_range, + timedelta_range, +) class TestTimeSeries: diff --git a/pandas/tests/series/test_timezones.py b/pandas/tests/series/test_timezones.py index 05792dc4f00d2..cec699172ed46 100644 --- a/pandas/tests/series/test_timezones.py +++ b/pandas/tests/series/test_timezones.py @@ -7,8 +7,7 @@ import numpy as np import pytest -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm from pandas.core.indexes.datetimes import date_range diff --git a/pandas/tests/series/test_ufunc.py b/pandas/tests/series/test_ufunc.py index c7fc37a278e83..ccb16b2d1ceaf 100644 --- a/pandas/tests/series/test_ufunc.py +++ b/pandas/tests/series/test_ufunc.py @@ -5,7 +5,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm from pandas.arrays import SparseArray UNARY_UFUNCS = [np.positive, np.floor, np.exp] diff --git a/pandas/tests/test_algos.py b/pandas/tests/test_algos.py index a080bf0feaebc..6d8ba5cf6afb8 100644 --- a/pandas/tests/test_algos.py +++ b/pandas/tests/test_algos.py @@ -8,7 +8,6 @@ from pandas._libs import algos as libalgos, groupby as libgroupby, hashtable as ht from pandas.compat.numpy import np_array_datetime64_compat -import pandas.util._test_decorators as td from pandas.core.dtypes.common import ( is_bool_dtype, @@ -28,12 +27,12 @@ IntervalIndex, Series, Timestamp, + _testing as tm, compat, ) -import pandas._testing as tm -import pandas.core.algorithms as algos +from pandas.core import algorithms as algos, common as com from pandas.core.arrays import DatetimeArray -import pandas.core.common as com +from pandas.util import _test_decorators as td class TestFactorize: diff --git a/pandas/tests/test_common.py b/pandas/tests/test_common.py index bcfed2d0d3a10..82d2251414739 100644 --- a/pandas/tests/test_common.py +++ b/pandas/tests/test_common.py @@ -10,8 +10,7 @@ import pandas as pd from pandas import Series, Timestamp -from pandas.core import ops -import pandas.core.common as com +from pandas.core import common as com, ops def test_get_callable_name(): @@ -48,7 +47,7 @@ def test_all_not_none(): def test_random_state(): - import numpy.random as npr + from numpy import random as npr # Check with seed state = com.random_state(5) diff --git a/pandas/tests/test_downstream.py b/pandas/tests/test_downstream.py index e718a6b759963..d7571c3f36130 100644 --- a/pandas/tests/test_downstream.py +++ b/pandas/tests/test_downstream.py @@ -8,10 +8,8 @@ import numpy as np # noqa import pytest -import pandas.util._test_decorators as td - -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm +from pandas.util import _test_decorators as td def import_module(name): @@ -34,7 +32,7 @@ def test_dask(df): toolz = import_module("toolz") # noqa dask = import_module("dask") # noqa - import dask.dataframe as dd + from dask import dataframe as dd ddf = dd.from_pandas(df, npartitions=3) assert ddf.A is not None @@ -78,8 +76,8 @@ def test_oo_optimizable(): def test_statsmodels(): statsmodels = import_module("statsmodels") # noqa - import statsmodels.api as sm - import statsmodels.formula.api as smf + from statsmodels import api as sm + from statsmodels.formula import api as smf df = sm.datasets.get_rdataset("Guerry", "HistData").data smf.ols("Lottery ~ Literacy + np.log(Pop1831)", data=df).fit() @@ -90,7 +88,7 @@ def test_statsmodels(): def test_scikit_learn(df): sklearn = import_module("sklearn") # noqa - from sklearn import svm, datasets + from sklearn import datasets, svm digits = datasets.load_digits() clf = svm.SVC(gamma=0.001, C=100.0) diff --git a/pandas/tests/test_expressions.py b/pandas/tests/test_expressions.py index 2368e93ddc256..8a49e80f04614 100644 --- a/pandas/tests/test_expressions.py +++ b/pandas/tests/test_expressions.py @@ -5,7 +5,7 @@ from numpy.random import randn import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.api import DataFrame from pandas.core.computation import expressions as expr diff --git a/pandas/tests/test_join.py b/pandas/tests/test_join.py index 129dc275c4d5a..6febe8a4e0e76 100644 --- a/pandas/tests/test_join.py +++ b/pandas/tests/test_join.py @@ -3,8 +3,7 @@ from pandas._libs import join as _join -from pandas import Categorical, DataFrame, Index, merge -import pandas._testing as tm +from pandas import Categorical, DataFrame, Index, _testing as tm, merge class TestIndexer: diff --git a/pandas/tests/test_lib.py b/pandas/tests/test_lib.py index b6f59807eaa15..df983dd0bda59 100644 --- a/pandas/tests/test_lib.py +++ b/pandas/tests/test_lib.py @@ -4,8 +4,7 @@ from pandas._libs import lib, writers as libwriters import pandas as pd -from pandas import Index -import pandas._testing as tm +from pandas import Index, _testing as tm class TestMisc: diff --git a/pandas/tests/test_multilevel.py b/pandas/tests/test_multilevel.py index 1ba73292dc0b4..e15ec3cd9f110 100644 --- a/pandas/tests/test_multilevel.py +++ b/pandas/tests/test_multilevel.py @@ -10,8 +10,7 @@ from pandas.core.dtypes.common import is_float_dtype, is_integer_dtype import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, _testing as tm AGG_FUNCTIONS = [ "sum", diff --git a/pandas/tests/test_nanops.py b/pandas/tests/test_nanops.py index 0d60e6e8a978f..0b1e32ed9c845 100644 --- a/pandas/tests/test_nanops.py +++ b/pandas/tests/test_nanops.py @@ -5,15 +5,13 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - from pandas.core.dtypes.common import is_integer_dtype import pandas as pd -from pandas import Series, isna -import pandas._testing as tm +from pandas import Series, _testing as tm, isna +from pandas.core import nanops as nanops from pandas.core.arrays import DatetimeArray -import pandas.core.nanops as nanops +from pandas.util import _test_decorators as td use_bn = nanops._USE_BOTTLENECK has_c16 = hasattr(np, "complex128") diff --git a/pandas/tests/test_optional_dependency.py b/pandas/tests/test_optional_dependency.py index e5ed69b7703b1..59391f2146cff 100644 --- a/pandas/tests/test_optional_dependency.py +++ b/pandas/tests/test_optional_dependency.py @@ -5,7 +5,7 @@ from pandas.compat._optional import VERSIONS, import_optional_dependency -import pandas._testing as tm +from pandas import _testing as tm def test_import_optional(): diff --git a/pandas/tests/test_register_accessor.py b/pandas/tests/test_register_accessor.py index d839936f731a3..31280dd2dd062 100644 --- a/pandas/tests/test_register_accessor.py +++ b/pandas/tests/test_register_accessor.py @@ -3,7 +3,7 @@ import pytest import pandas as pd -import pandas._testing as tm +from pandas import _testing as tm @contextlib.contextmanager diff --git a/pandas/tests/test_sorting.py b/pandas/tests/test_sorting.py index 98297474243e4..5a25dc9708e25 100644 --- a/pandas/tests/test_sorting.py +++ b/pandas/tests/test_sorting.py @@ -5,10 +5,9 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex, Series, array, concat, merge -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm, array, concat, merge +from pandas.core import common as com from pandas.core.algorithms import safe_sort -import pandas.core.common as com from pandas.core.sorting import ( decons_group_index, get_group_index, diff --git a/pandas/tests/test_strings.py b/pandas/tests/test_strings.py index d9396d70f9112..3b888e24e2297 100644 --- a/pandas/tests/test_strings.py +++ b/pandas/tests/test_strings.py @@ -8,9 +8,17 @@ from pandas._libs import lib import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series, concat, isna, notna -import pandas._testing as tm -import pandas.core.strings as strings +from pandas import ( + DataFrame, + Index, + MultiIndex, + Series, + _testing as tm, + concat, + isna, + notna, +) +from pandas.core import strings as strings def assert_series_or_index_equal(left, right): diff --git a/pandas/tests/test_take.py b/pandas/tests/test_take.py index 9f0632917037c..4b53799d2ea71 100644 --- a/pandas/tests/test_take.py +++ b/pandas/tests/test_take.py @@ -6,8 +6,8 @@ from pandas._libs import iNaT -import pandas._testing as tm -import pandas.core.algorithms as algos +from pandas import _testing as tm +from pandas.core import algorithms as algos @pytest.fixture(params=[True, False]) diff --git a/pandas/tests/tools/test_to_datetime.py b/pandas/tests/tools/test_to_datetime.py index d2049892705ea..4f4b13ff64067 100644 --- a/pandas/tests/tools/test_to_datetime.py +++ b/pandas/tests/tools/test_to_datetime.py @@ -1,5 +1,4 @@ """ test to_datetime """ - import calendar from collections import deque from datetime import datetime, timedelta @@ -14,7 +13,6 @@ from pandas._libs import tslib from pandas._libs.tslibs import iNaT, parsing from pandas.errors import OutOfBoundsDatetime -import pandas.util._test_decorators as td from pandas.core.dtypes.common import is_datetime64_ns_dtype @@ -26,13 +24,14 @@ NaT, Series, Timestamp, + _testing as tm, date_range, isna, to_datetime, ) -import pandas._testing as tm from pandas.core.arrays import DatetimeArray from pandas.core.tools import datetimes as tools +from pandas.util import _test_decorators as td class TestTimeConversionFormats: diff --git a/pandas/tests/tools/test_to_numeric.py b/pandas/tests/tools/test_to_numeric.py index 263887a8ea36e..d814f59377fc7 100644 --- a/pandas/tests/tools/test_to_numeric.py +++ b/pandas/tests/tools/test_to_numeric.py @@ -5,8 +5,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, Series, to_numeric -import pandas._testing as tm +from pandas import DataFrame, Index, Series, _testing as tm, to_numeric @pytest.fixture(params=[None, "ignore", "raise", "coerce"]) diff --git a/pandas/tests/tools/test_to_time.py b/pandas/tests/tools/test_to_time.py index bfd347fd122c3..7605e43faa01d 100644 --- a/pandas/tests/tools/test_to_time.py +++ b/pandas/tests/tools/test_to_time.py @@ -3,12 +3,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm from pandas.core.tools.datetimes import to_time as to_time_alias from pandas.core.tools.times import to_time +from pandas.util import _test_decorators as td class TestToTime: diff --git a/pandas/tests/tools/test_to_timedelta.py b/pandas/tests/tools/test_to_timedelta.py index 1e193f22a6698..65578aa62fa2b 100644 --- a/pandas/tests/tools/test_to_timedelta.py +++ b/pandas/tests/tools/test_to_timedelta.py @@ -4,8 +4,7 @@ import pytest import pandas as pd -from pandas import Series, TimedeltaIndex, isna, to_timedelta -import pandas._testing as tm +from pandas import Series, TimedeltaIndex, _testing as tm, isna, to_timedelta class TestTimedeltas: diff --git a/pandas/tests/tseries/frequencies/test_inference.py b/pandas/tests/tseries/frequencies/test_inference.py index 95edd038dab9b..82b7677295500 100644 --- a/pandas/tests/tseries/frequencies/test_inference.py +++ b/pandas/tests/tseries/frequencies/test_inference.py @@ -7,12 +7,18 @@ from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG from pandas.compat import is_platform_windows -from pandas import DatetimeIndex, Index, Series, Timestamp, date_range, period_range -import pandas._testing as tm +from pandas import ( + DatetimeIndex, + Index, + Series, + Timestamp, + _testing as tm, + date_range, + period_range, +) from pandas.core.tools.datetimes import to_datetime -import pandas.tseries.frequencies as frequencies -import pandas.tseries.offsets as offsets +from pandas.tseries import frequencies as frequencies, offsets as offsets def _check_generated_range(start, periods, freq): diff --git a/pandas/tests/tseries/holiday/test_calendar.py b/pandas/tests/tseries/holiday/test_calendar.py index cd3b1aab33a2a..e087a5f3242f7 100644 --- a/pandas/tests/tseries/holiday/test_calendar.py +++ b/pandas/tests/tseries/holiday/test_calendar.py @@ -2,8 +2,7 @@ import pytest -from pandas import DatetimeIndex, offsets, to_datetime -import pandas._testing as tm +from pandas import DatetimeIndex, _testing as tm, offsets, to_datetime from pandas.tseries.holiday import ( AbstractHolidayCalendar, diff --git a/pandas/tests/tseries/holiday/test_holiday.py b/pandas/tests/tseries/holiday/test_holiday.py index a2c146dbd65e8..7166483dc2de2 100644 --- a/pandas/tests/tseries/holiday/test_holiday.py +++ b/pandas/tests/tseries/holiday/test_holiday.py @@ -3,7 +3,7 @@ import pytest from pytz import utc -import pandas._testing as tm +from pandas import _testing as tm from pandas.tseries.holiday import ( MO, diff --git a/pandas/tests/tseries/offsets/conftest.py b/pandas/tests/tseries/offsets/conftest.py index df68c98dca43f..4feb42bd4b3cc 100644 --- a/pandas/tests/tseries/offsets/conftest.py +++ b/pandas/tests/tseries/offsets/conftest.py @@ -2,7 +2,7 @@ from pandas._libs.tslibs.offsets import MonthOffset -import pandas.tseries.offsets as offsets +from pandas.tseries import offsets as offsets @pytest.fixture(params=[getattr(offsets, o) for o in offsets.__all__]) diff --git a/pandas/tests/tseries/offsets/test_fiscal.py b/pandas/tests/tseries/offsets/test_fiscal.py index 7713be67a7e05..f643feabc6ff0 100644 --- a/pandas/tests/tseries/offsets/test_fiscal.py +++ b/pandas/tests/tseries/offsets/test_fiscal.py @@ -8,8 +8,7 @@ from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG -from pandas import Timestamp -import pandas._testing as tm +from pandas import Timestamp, _testing as tm from pandas.tseries.frequencies import get_offset from pandas.tseries.offsets import FY5253, FY5253Quarter diff --git a/pandas/tests/tseries/offsets/test_offsets.py b/pandas/tests/tseries/offsets/test_offsets.py index 784c04f225630..f486373165bf2 100644 --- a/pandas/tests/tseries/offsets/test_offsets.py +++ b/pandas/tests/tseries/offsets/test_offsets.py @@ -9,22 +9,21 @@ OutOfBoundsDatetime, Timestamp, conversion, + offsets as liboffsets, timezones, ) -import pandas._libs.tslibs.offsets as liboffsets from pandas._libs.tslibs.offsets import ApplyTypeError, _get_offset, _offset_map from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG -import pandas.compat as compat from pandas.compat.numpy import np_datetime64_compat from pandas.errors import PerformanceWarning -import pandas._testing as tm +from pandas import _testing as tm, compat as compat from pandas.core.indexes.datetimes import DatetimeIndex, date_range from pandas.core.series import Series from pandas.io.pickle import read_pickle +from pandas.tseries import offsets as offsets from pandas.tseries.holiday import USFederalHolidayCalendar -import pandas.tseries.offsets as offsets from pandas.tseries.offsets import ( FY5253, BaseOffset, diff --git a/pandas/tests/tseries/offsets/test_ticks.py b/pandas/tests/tseries/offsets/test_ticks.py index 10c239c683bc0..2c5b7b98eda67 100644 --- a/pandas/tests/tseries/offsets/test_ticks.py +++ b/pandas/tests/tseries/offsets/test_ticks.py @@ -9,8 +9,7 @@ from pandas._libs.tslibs.offsets import delta_to_tick -from pandas import Timedelta, Timestamp -import pandas._testing as tm +from pandas import Timedelta, Timestamp, _testing as tm from pandas.tseries import offsets from pandas.tseries.offsets import Hour, Micro, Milli, Minute, Nano, Second diff --git a/pandas/tests/tslibs/test_array_to_datetime.py b/pandas/tests/tslibs/test_array_to_datetime.py index a40fcd725d604..40e8d4110039f 100644 --- a/pandas/tests/tslibs/test_array_to_datetime.py +++ b/pandas/tests/tslibs/test_array_to_datetime.py @@ -8,8 +8,7 @@ from pandas._libs import iNaT, tslib from pandas.compat.numpy import np_array_datetime64_compat -from pandas import Timestamp -import pandas._testing as tm +from pandas import Timestamp, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/tslibs/test_conversion.py b/pandas/tests/tslibs/test_conversion.py index 5a16fea47e90d..78060e4fce6c8 100644 --- a/pandas/tests/tslibs/test_conversion.py +++ b/pandas/tests/tslibs/test_conversion.py @@ -6,8 +6,7 @@ from pandas._libs.tslibs import conversion, iNaT, timezones, tzconversion -from pandas import Timestamp, date_range -import pandas._testing as tm +from pandas import Timestamp, _testing as tm, date_range def _compare_utc_to_local(tz_didx): diff --git a/pandas/tests/tslibs/test_fields.py b/pandas/tests/tslibs/test_fields.py index a45fcab56759f..94b4755bec5b4 100644 --- a/pandas/tests/tslibs/test_fields.py +++ b/pandas/tests/tslibs/test_fields.py @@ -2,7 +2,7 @@ from pandas._libs.tslibs import fields -import pandas._testing as tm +from pandas import _testing as tm def test_fields_readonly(): diff --git a/pandas/tests/tslibs/test_liboffsets.py b/pandas/tests/tslibs/test_liboffsets.py index 206a604788c7e..52d95645c448e 100644 --- a/pandas/tests/tslibs/test_liboffsets.py +++ b/pandas/tests/tslibs/test_liboffsets.py @@ -5,7 +5,7 @@ import pytest -import pandas._libs.tslibs.offsets as liboffsets +from pandas._libs.tslibs import offsets as liboffsets from pandas._libs.tslibs.offsets import roll_qtrday from pandas import Timestamp diff --git a/pandas/tests/tslibs/test_parsing.py b/pandas/tests/tslibs/test_parsing.py index dc7421ea63464..f1e236c50c4c2 100644 --- a/pandas/tests/tslibs/test_parsing.py +++ b/pandas/tests/tslibs/test_parsing.py @@ -10,9 +10,9 @@ from pandas._libs.tslibs import parsing from pandas._libs.tslibs.parsing import parse_time_string -import pandas.util._test_decorators as td -import pandas._testing as tm +from pandas import _testing as tm +from pandas.util import _test_decorators as td def test_parse_time_string(): diff --git a/pandas/tests/util/test_assert_almost_equal.py b/pandas/tests/util/test_assert_almost_equal.py index c25668c33bfc4..c7bce3f233607 100644 --- a/pandas/tests/util/test_assert_almost_equal.py +++ b/pandas/tests/util/test_assert_almost_equal.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Index, Series, Timestamp -import pandas._testing as tm +from pandas import DataFrame, Index, Series, Timestamp, _testing as tm def _assert_almost_equal_both(a, b, **kwargs): diff --git a/pandas/tests/util/test_assert_categorical_equal.py b/pandas/tests/util/test_assert_categorical_equal.py index 8957e7a172666..ee77ddc26984e 100644 --- a/pandas/tests/util/test_assert_categorical_equal.py +++ b/pandas/tests/util/test_assert_categorical_equal.py @@ -1,7 +1,6 @@ import pytest -from pandas import Categorical -import pandas._testing as tm +from pandas import Categorical, _testing as tm @pytest.mark.parametrize( diff --git a/pandas/tests/util/test_assert_extension_array_equal.py b/pandas/tests/util/test_assert_extension_array_equal.py index d9fdf1491c328..23230ad8bbf3d 100644 --- a/pandas/tests/util/test_assert_extension_array_equal.py +++ b/pandas/tests/util/test_assert_extension_array_equal.py @@ -1,7 +1,7 @@ import numpy as np import pytest -import pandas._testing as tm +from pandas import _testing as tm from pandas.core.arrays.sparse import SparseArray diff --git a/pandas/tests/util/test_assert_frame_equal.py b/pandas/tests/util/test_assert_frame_equal.py index fe3e1ff906919..cb026c0415c45 100644 --- a/pandas/tests/util/test_assert_frame_equal.py +++ b/pandas/tests/util/test_assert_frame_equal.py @@ -1,8 +1,7 @@ import pytest import pandas as pd -from pandas import DataFrame -import pandas._testing as tm +from pandas import DataFrame, _testing as tm @pytest.fixture(params=[True, False]) diff --git a/pandas/tests/util/test_assert_index_equal.py b/pandas/tests/util/test_assert_index_equal.py index 125af6ef78593..b62d3780a2e4e 100644 --- a/pandas/tests/util/test_assert_index_equal.py +++ b/pandas/tests/util/test_assert_index_equal.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import Categorical, Index, MultiIndex, NaT -import pandas._testing as tm +from pandas import Categorical, Index, MultiIndex, NaT, _testing as tm def test_index_equal_levels_mismatch(): diff --git a/pandas/tests/util/test_assert_interval_array_equal.py b/pandas/tests/util/test_assert_interval_array_equal.py index 96f2973a1528c..5453e3cb25eae 100644 --- a/pandas/tests/util/test_assert_interval_array_equal.py +++ b/pandas/tests/util/test_assert_interval_array_equal.py @@ -1,7 +1,6 @@ import pytest -from pandas import interval_range -import pandas._testing as tm +from pandas import _testing as tm, interval_range @pytest.mark.parametrize( diff --git a/pandas/tests/util/test_assert_numpy_array_equal.py b/pandas/tests/util/test_assert_numpy_array_equal.py index d29ddedd2fdd6..4cd46a2b1dccc 100644 --- a/pandas/tests/util/test_assert_numpy_array_equal.py +++ b/pandas/tests/util/test_assert_numpy_array_equal.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import Timestamp -import pandas._testing as tm +from pandas import Timestamp, _testing as tm def test_assert_numpy_array_equal_shape_mismatch(): diff --git a/pandas/tests/util/test_assert_produces_warning.py b/pandas/tests/util/test_assert_produces_warning.py index 87765c909938d..311f3eace5929 100644 --- a/pandas/tests/util/test_assert_produces_warning.py +++ b/pandas/tests/util/test_assert_produces_warning.py @@ -2,7 +2,7 @@ import pytest -import pandas._testing as tm +from pandas import _testing as tm def f(): diff --git a/pandas/tests/util/test_assert_series_equal.py b/pandas/tests/util/test_assert_series_equal.py index 1284cc9d4f49b..b415737b56f3a 100644 --- a/pandas/tests/util/test_assert_series_equal.py +++ b/pandas/tests/util/test_assert_series_equal.py @@ -1,8 +1,7 @@ import pytest import pandas as pd -from pandas import Categorical, DataFrame, Series -import pandas._testing as tm +from pandas import Categorical, DataFrame, Series, _testing as tm def _assert_series_equal_both(a, b, **kwargs): diff --git a/pandas/tests/util/test_deprecate.py b/pandas/tests/util/test_deprecate.py index ee4f7e3f34f2e..e076a490f3bb0 100644 --- a/pandas/tests/util/test_deprecate.py +++ b/pandas/tests/util/test_deprecate.py @@ -4,7 +4,7 @@ from pandas.util._decorators import deprecate -import pandas._testing as tm +from pandas import _testing as tm def new_func(): diff --git a/pandas/tests/util/test_deprecate_kwarg.py b/pandas/tests/util/test_deprecate_kwarg.py index b165e9fba0e4f..f36acd0068fce 100644 --- a/pandas/tests/util/test_deprecate_kwarg.py +++ b/pandas/tests/util/test_deprecate_kwarg.py @@ -2,7 +2,7 @@ from pandas.util._decorators import deprecate_kwarg -import pandas._testing as tm +from pandas import _testing as tm @deprecate_kwarg("old", "new") diff --git a/pandas/tests/util/test_deprecate_nonkeyword_arguments.py b/pandas/tests/util/test_deprecate_nonkeyword_arguments.py index 05bc617232bdd..bd7ddf72a81f4 100644 --- a/pandas/tests/util/test_deprecate_nonkeyword_arguments.py +++ b/pandas/tests/util/test_deprecate_nonkeyword_arguments.py @@ -1,12 +1,11 @@ """ Tests for the `deprecate_nonkeyword_arguments` decorator """ - import warnings from pandas.util._decorators import deprecate_nonkeyword_arguments -import pandas._testing as tm +from pandas import _testing as tm @deprecate_nonkeyword_arguments(version="1.1", allowed_args=["a", "b"]) diff --git a/pandas/tests/util/test_hashing.py b/pandas/tests/util/test_hashing.py index ff29df39e1871..c433932f92033 100644 --- a/pandas/tests/util/test_hashing.py +++ b/pandas/tests/util/test_hashing.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Index, MultiIndex, Series -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm from pandas.core.util.hashing import hash_tuples from pandas.util import hash_array, hash_pandas_object diff --git a/pandas/tests/util/test_safe_import.py b/pandas/tests/util/test_safe_import.py index bd07bea934ed3..b555c2c0993a6 100644 --- a/pandas/tests/util/test_safe_import.py +++ b/pandas/tests/util/test_safe_import.py @@ -3,7 +3,7 @@ import pytest -import pandas.util._test_decorators as td +from pandas.util import _test_decorators as td @pytest.mark.parametrize("name", ["foo", "hello123"]) diff --git a/pandas/tests/util/test_util.py b/pandas/tests/util/test_util.py index d73a789b876f4..fff6655552ed7 100644 --- a/pandas/tests/util/test_util.py +++ b/pandas/tests/util/test_util.py @@ -2,9 +2,7 @@ import pytest -import pandas.compat as compat - -import pandas._testing as tm +from pandas import _testing as tm, compat as compat def test_rands(): diff --git a/pandas/tests/window/common.py b/pandas/tests/window/common.py index 7e0be331ec8d5..3b87ef05f9173 100644 --- a/pandas/tests/window/common.py +++ b/pandas/tests/window/common.py @@ -1,7 +1,6 @@ import numpy as np -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm def check_pairwise_moment(frame, dispatch, name, **kwargs): diff --git a/pandas/tests/window/conftest.py b/pandas/tests/window/conftest.py index eb8252d5731be..2fab5e35a4583 100644 --- a/pandas/tests/window/conftest.py +++ b/pandas/tests/window/conftest.py @@ -4,9 +4,8 @@ from numpy.random import randn import pytest -import pandas.util._test_decorators as td - from pandas import DataFrame, Series, bdate_range, notna +from pandas.util import _test_decorators as td @pytest.fixture(params=[True, False]) diff --git a/pandas/tests/window/moments/test_moments_consistency_expanding.py b/pandas/tests/window/moments/test_moments_consistency_expanding.py index ee3579d76d1db..fb9e84ccc122a 100644 --- a/pandas/tests/window/moments/test_moments_consistency_expanding.py +++ b/pandas/tests/window/moments/test_moments_consistency_expanding.py @@ -4,8 +4,7 @@ from numpy.random import randn import pytest -from pandas import DataFrame, Index, MultiIndex, Series, isna, notna -import pandas._testing as tm +from pandas import DataFrame, Index, MultiIndex, Series, _testing as tm, isna, notna from pandas.tests.window.common import ( moments_consistency_cov_data, moments_consistency_is_constant, diff --git a/pandas/tests/window/moments/test_moments_consistency_rolling.py b/pandas/tests/window/moments/test_moments_consistency_rolling.py index a3de8aa69f840..60399433cf098 100644 --- a/pandas/tests/window/moments/test_moments_consistency_rolling.py +++ b/pandas/tests/window/moments/test_moments_consistency_rolling.py @@ -5,11 +5,8 @@ from numpy.random import randn import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, DatetimeIndex, Index, Series -import pandas._testing as tm +from pandas import DataFrame, DatetimeIndex, Index, Series, _testing as tm from pandas.core.window.common import _flex_binary_moment from pandas.tests.window.common import ( check_pairwise_moment, @@ -21,6 +18,7 @@ moments_consistency_var_data, moments_consistency_var_debiasing_factors, ) +from pandas.util import _test_decorators as td def _rolling_consistency_cases(): diff --git a/pandas/tests/window/moments/test_moments_ewm.py b/pandas/tests/window/moments/test_moments_ewm.py index 89d46a8bb6cb5..d7522f6ef0473 100644 --- a/pandas/tests/window/moments/test_moments_ewm.py +++ b/pandas/tests/window/moments/test_moments_ewm.py @@ -3,8 +3,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm def check_ew(name=None, preserve_nan=False, series=None, frame=None, nan_locs=None): diff --git a/pandas/tests/window/moments/test_moments_rolling.py b/pandas/tests/window/moments/test_moments_rolling.py index 81f020fe7de23..892ae264f52b4 100644 --- a/pandas/tests/window/moments/test_moments_rolling.py +++ b/pandas/tests/window/moments/test_moments_rolling.py @@ -5,13 +5,11 @@ from numpy.random import randn import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Series, isna, notna -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, isna, notna +from pandas.util import _test_decorators as td -import pandas.tseries.offsets as offsets +from pandas.tseries import offsets as offsets def _check_moment_func( diff --git a/pandas/tests/window/test_api.py b/pandas/tests/window/test_api.py index 33fb79d98a324..fb91ba1163305 100644 --- a/pandas/tests/window/test_api.py +++ b/pandas/tests/window/test_api.py @@ -3,12 +3,10 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - import pandas as pd -from pandas import DataFrame, Index, Series, Timestamp, concat -import pandas._testing as tm +from pandas import DataFrame, Index, Series, Timestamp, _testing as tm, concat from pandas.core.base import SpecificationError +from pandas.util import _test_decorators as td def test_getitem(frame): diff --git a/pandas/tests/window/test_apply.py b/pandas/tests/window/test_apply.py index bc38634da8941..ff0fe1a824818 100644 --- a/pandas/tests/window/test_apply.py +++ b/pandas/tests/window/test_apply.py @@ -2,10 +2,17 @@ import pytest from pandas.errors import NumbaUtilError -import pandas.util._test_decorators as td -from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, date_range -import pandas._testing as tm +from pandas import ( + DataFrame, + Index, + MultiIndex, + Series, + Timestamp, + _testing as tm, + date_range, +) +from pandas.util import _test_decorators as td @pytest.mark.parametrize("bad_raw", [None, 1, 0]) diff --git a/pandas/tests/window/test_base_indexer.py b/pandas/tests/window/test_base_indexer.py index 4a0212e890d3a..c3b452bac3bcb 100644 --- a/pandas/tests/window/test_base_indexer.py +++ b/pandas/tests/window/test_base_indexer.py @@ -1,8 +1,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range from pandas.api.indexers import BaseIndexer, FixedForwardWindowIndexer from pandas.core.window.indexers import ExpandingIndexer, VariableOffsetWindowIndexer diff --git a/pandas/tests/window/test_dtypes.py b/pandas/tests/window/test_dtypes.py index 0aa5bf019ff5e..325acd64f0234 100644 --- a/pandas/tests/window/test_dtypes.py +++ b/pandas/tests/window/test_dtypes.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.base import DataError # gh-12373 : rolling functions error on float32 data diff --git a/pandas/tests/window/test_ewm.py b/pandas/tests/window/test_ewm.py index 12c314d5e9ec9..cb575eb398b0e 100644 --- a/pandas/tests/window/test_ewm.py +++ b/pandas/tests/window/test_ewm.py @@ -3,8 +3,7 @@ from pandas.errors import UnsupportedFunctionCall -from pandas import DataFrame, DatetimeIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, DatetimeIndex, Series, _testing as tm, date_range from pandas.core.window import ExponentialMovingWindow diff --git a/pandas/tests/window/test_expanding.py b/pandas/tests/window/test_expanding.py index 30d65ebe84a1f..6e3bc8234ff6a 100644 --- a/pandas/tests/window/test_expanding.py +++ b/pandas/tests/window/test_expanding.py @@ -4,8 +4,7 @@ from pandas.errors import UnsupportedFunctionCall import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.window import Expanding diff --git a/pandas/tests/window/test_grouper.py b/pandas/tests/window/test_grouper.py index 5b2687271f9d6..a0283ec7edfe6 100644 --- a/pandas/tests/window/test_grouper.py +++ b/pandas/tests/window/test_grouper.py @@ -2,8 +2,7 @@ import pytest import pandas as pd -from pandas import DataFrame, Series -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm from pandas.core.groupby.groupby import get_groupby diff --git a/pandas/tests/window/test_numba.py b/pandas/tests/window/test_numba.py index 7e049af0ca1f8..98012463a4626 100644 --- a/pandas/tests/window/test_numba.py +++ b/pandas/tests/window/test_numba.py @@ -1,11 +1,9 @@ import numpy as np import pytest -import pandas.util._test_decorators as td - -from pandas import Series -import pandas._testing as tm +from pandas import Series, _testing as tm from pandas.core.util.numba_ import NUMBA_FUNC_CACHE +from pandas.util import _test_decorators as td @td.skip_if_no("numba", "0.46.0") diff --git a/pandas/tests/window/test_pairwise.py b/pandas/tests/window/test_pairwise.py index e82d4b8cbf770..8e2a264823d52 100644 --- a/pandas/tests/window/test_pairwise.py +++ b/pandas/tests/window/test_pairwise.py @@ -3,8 +3,7 @@ import numpy as np import pytest -from pandas import DataFrame, MultiIndex, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, MultiIndex, Series, _testing as tm, date_range from pandas.core.algorithms import safe_sort diff --git a/pandas/tests/window/test_rolling.py b/pandas/tests/window/test_rolling.py index 8d72e2cb92ca9..8bf83e5e126f3 100644 --- a/pandas/tests/window/test_rolling.py +++ b/pandas/tests/window/test_rolling.py @@ -4,12 +4,11 @@ import pytest from pandas.errors import UnsupportedFunctionCall -import pandas.util._test_decorators as td import pandas as pd -from pandas import DataFrame, Series, date_range -import pandas._testing as tm +from pandas import DataFrame, Series, _testing as tm, date_range from pandas.core.window import Rolling +from pandas.util import _test_decorators as td def test_doc_string(): diff --git a/pandas/tests/window/test_timeseries_window.py b/pandas/tests/window/test_timeseries_window.py index 8aa4d7103e48a..f38adaa231246 100644 --- a/pandas/tests/window/test_timeseries_window.py +++ b/pandas/tests/window/test_timeseries_window.py @@ -7,12 +7,12 @@ MultiIndex, Series, Timestamp, + _testing as tm, date_range, to_datetime, ) -import pandas._testing as tm -import pandas.tseries.offsets as offsets +from pandas.tseries import offsets as offsets class TestRollingTS: diff --git a/pandas/tests/window/test_window.py b/pandas/tests/window/test_window.py index a450d29797c41..8273f029d092b 100644 --- a/pandas/tests/window/test_window.py +++ b/pandas/tests/window/test_window.py @@ -2,11 +2,11 @@ import pytest from pandas.errors import UnsupportedFunctionCall -import pandas.util._test_decorators as td import pandas as pd from pandas import Series from pandas.core.window import Window +from pandas.util import _test_decorators as td @td.skip_if_no_scipy diff --git a/pandas/tseries/api.py b/pandas/tseries/api.py index 2094791ecdc60..2dbcc9249a7c6 100644 --- a/pandas/tseries/api.py +++ b/pandas/tseries/api.py @@ -4,5 +4,5 @@ # flake8: noqa +from pandas.tseries import offsets as offsets from pandas.tseries.frequencies import infer_freq -import pandas.tseries.offsets as offsets diff --git a/pandas/util/_doctools.py b/pandas/util/_doctools.py index f413490764124..03d52f7ec9e5f 100644 --- a/pandas/util/_doctools.py +++ b/pandas/util/_doctools.py @@ -53,8 +53,7 @@ def plot(self, left, right, labels=None, vertical: bool = True): vertical : bool, default True If True, use vertical layout. If False, use horizontal layout. """ - import matplotlib.pyplot as plt - import matplotlib.gridspec as gridspec + from matplotlib import gridspec as gridspec, pyplot as plt if not isinstance(left, list): left = [left] @@ -139,7 +138,7 @@ def _make_table(self, ax, df, title: str, height: Optional[float] = None): ax.set_visible(False) return - import pandas.plotting as plotting + from pandas import plotting as plotting idx_nlevels = df.index.nlevels col_nlevels = df.columns.nlevels @@ -166,7 +165,7 @@ def _make_table(self, ax, df, title: str, height: Optional[float] = None): if __name__ == "__main__": - import matplotlib.pyplot as plt + from matplotlib import pyplot as plt p = TablePlotter() diff --git a/scripts/tests/test_validate_unwanted_patterns.py b/scripts/tests/test_validate_unwanted_patterns.py index b6cfa20cd7ca0..947666a730ee9 100644 --- a/scripts/tests/test_validate_unwanted_patterns.py +++ b/scripts/tests/test_validate_unwanted_patterns.py @@ -1,7 +1,6 @@ import io import pytest - import validate_unwanted_patterns From 283a8c3e53d9d5317b2f18a8e27452cc95868a2f Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Fri, 17 Jul 2020 16:43:45 -0500 Subject: [PATCH 2/6] update isort --- environment.yml | 2 +- pandas/_libs/tslib.pyx | 8 ++++---- pandas/_libs/tslibs/fields.pyx | 4 ++-- pandas/_libs/tslibs/period.pyx | 5 ++--- pandas/_libs/tslibs/vectorized.pyx | 9 ++++++--- requirements-dev.txt | 2 +- 6 files changed, 16 insertions(+), 14 deletions(-) diff --git a/environment.yml b/environment.yml index 17bf80fa3cf32..5149ff28e60d9 100644 --- a/environment.yml +++ b/environment.yml @@ -21,7 +21,7 @@ dependencies: - flake8<3.8.0 # temporary pin, GH#34150 - flake8-comprehensions>=3.1.0 # used by flake8, linting of unnecessary comprehensions - flake8-rst>=0.6.0,<=0.7.0 # linting of code blocks in rst files - - isort=5.0.4 # check that imports are in the right order + - isort=5.1.1 # check that imports are in the right order - mypy=0.730 - pycodestyle # used by flake8 diff --git a/pandas/_libs/tslib.pyx b/pandas/_libs/tslib.pyx index e071b8238a699..56cca99cba598 100644 --- a/pandas/_libs/tslib.pyx +++ b/pandas/_libs/tslib.pyx @@ -14,6 +14,7 @@ PyDateTime_IMPORT cimport numpy as cnp from numpy cimport float64_t, int64_t, ndarray + import numpy as np cnp.import_array() @@ -46,15 +47,14 @@ from pandas._libs.tslibs.nattype cimport ( c_NaT as NaT, c_nat_strings as nat_strings, ) - from pandas._libs.tslibs.timestamps cimport _Timestamp + from pandas._libs.tslibs.timestamps import Timestamp # Note: this is the only non-tslibs intra-pandas dependency here + from pandas._libs.missing cimport checknull_with_nat_and_na -from pandas._libs.tslibs.tzconversion cimport ( - tz_localize_to_utc_single, -) +from pandas._libs.tslibs.tzconversion cimport tz_localize_to_utc_single def _test_parse_iso8601(ts: str): diff --git a/pandas/_libs/tslibs/fields.pyx b/pandas/_libs/tslibs/fields.pyx index b161d078e5260..16fa05c3801c6 100644 --- a/pandas/_libs/tslibs/fields.pyx +++ b/pandas/_libs/tslibs/fields.pyx @@ -21,13 +21,13 @@ from pandas._libs.tslibs.ccalendar cimport ( dayofweek, get_day_of_year, get_days_in_month, + get_firstbday, get_iso_calendar, + get_lastbday, get_week_of_year, is_leapyear, iso_calendar_t, month_offset, - get_firstbday, - get_lastbday, ) from pandas._libs.tslibs.nattype cimport NPY_NAT from pandas._libs.tslibs.np_datetime cimport ( diff --git a/pandas/_libs/tslibs/period.pyx b/pandas/_libs/tslibs/period.pyx index ab6028fe24bf7..29cee4d4aab59 100644 --- a/pandas/_libs/tslibs/period.pyx +++ b/pandas/_libs/tslibs/period.pyx @@ -14,7 +14,6 @@ from libc.time cimport strftime, tm import cython from cpython.datetime cimport ( - datetime, PyDate_Check, PyDateTime_Check, PyDateTime_IMPORT, @@ -44,8 +43,8 @@ cdef extern from "src/datetime/np_datetime.h": from pandas._libs.tslibs cimport util as util -from pandas._libs.tslibs.timestamps import Timestamp from pandas._libs.tslibs.timedeltas import Timedelta +from pandas._libs.tslibs.timestamps import Timestamp from pandas._libs.tslibs.ccalendar cimport ( c_MONTH_NUMBERS, @@ -55,7 +54,7 @@ from pandas._libs.tslibs.ccalendar cimport ( get_week_of_year, is_leapyear, ) -from pandas._libs.tslibs.ccalendar cimport c_MONTH_NUMBERS + from pandas._libs.tslibs.conversion import ensure_datetime64ns from pandas._libs.tslibs.dtypes cimport ( diff --git a/pandas/_libs/tslibs/vectorized.pyx b/pandas/_libs/tslibs/vectorized.pyx index c8f8daf6724c2..bdc00f6c6e21a 100644 --- a/pandas/_libs/tslibs/vectorized.pyx +++ b/pandas/_libs/tslibs/vectorized.pyx @@ -1,18 +1,21 @@ import cython -from cpython.datetime cimport datetime, date, time, tzinfo +from cpython.datetime cimport date, datetime, time, tzinfo import numpy as np + from numpy cimport int64_t, intp_t, ndarray from .conversion cimport normalize_i8_stamp + from .dtypes import Resolution + from .nattype cimport NPY_NAT, c_NaT as NaT -from .np_datetime cimport npy_datetimestruct, dt64_to_dtstruct +from .np_datetime cimport dt64_to_dtstruct, npy_datetimestruct from .offsets cimport to_offset from .period cimport get_period_ordinal from .timestamps cimport create_timestamp_from_ts -from .timezones cimport is_utc, is_tzlocal, get_dst_info +from .timezones cimport get_dst_info, is_tzlocal, is_utc from .tzconversion cimport tz_convert_utc_to_tzlocal # ------------------------------------------------------------------------- diff --git a/requirements-dev.txt b/requirements-dev.txt index 1ec998ffa72d4..76917312e0d32 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -11,7 +11,7 @@ cpplint flake8<3.8.0 flake8-comprehensions>=3.1.0 flake8-rst>=0.6.0,<=0.7.0 -isort==4.3.21 +isort==5.1.1 mypy==0.730 pycodestyle gitpython From 7c1c442fb439c6dd4016dc9bb76cec68dd24d719 Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Fri, 17 Jul 2020 21:08:37 -0500 Subject: [PATCH 3/6] fix import --- pandas/tests/io/json/test_pandas.py | 3 ++- pandas/tests/window/test_apply.py | 3 ++- pandas/tests/window/test_numba.py | 7 +++---- pandas/tests/window/test_timeseries_window.py | 1 + 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/pandas/tests/io/json/test_pandas.py b/pandas/tests/io/json/test_pandas.py index 17ffc6fad43f8..966cfeda55fc6 100644 --- a/pandas/tests/io/json/test_pandas.py +++ b/pandas/tests/io/json/test_pandas.py @@ -10,6 +10,7 @@ import pytest from pandas.compat import is_platform_32bit, is_platform_windows +from pandas.util._test_decorators import skip_if_not_us_locale import pandas as pd from pandas import DataFrame, DatetimeIndex, Series, Timestamp, compat, read_json @@ -1208,7 +1209,7 @@ def test_read_inline_jsonl(self): expected = DataFrame([[1, 2], [1, 2]], columns=["a", "b"]) tm.assert_frame_equal(result, expected) - @td.skip_if_not_us_locale + @skip_if_not_us_locale def test_read_s3_jsonl(self, s3_resource): # GH17200 diff --git a/pandas/tests/window/test_apply.py b/pandas/tests/window/test_apply.py index c10d4f661ea59..3057223eb709a 100644 --- a/pandas/tests/window/test_apply.py +++ b/pandas/tests/window/test_apply.py @@ -2,6 +2,7 @@ import pytest from pandas.errors import NumbaUtilError +from pandas.util._test_decorators import skip_if_no from pandas import DataFrame, Index, MultiIndex, Series, Timestamp, compat, date_range import pandas._testing as tm @@ -132,7 +133,7 @@ def test_invalid_raw_numba(): Series(range(1)).rolling(1).apply(lambda x: x, raw=False, engine="numba") -@td.skip_if_no("numba") +@skip_if_no("numba") def test_invalid_kwargs_nopython(): with pytest.raises(NumbaUtilError, match="numba does not support kwargs with"): Series(range(1)).rolling(1).apply( diff --git a/pandas/tests/window/test_numba.py b/pandas/tests/window/test_numba.py index bd21155cd7c94..7cf1ee7a2e961 100644 --- a/pandas/tests/window/test_numba.py +++ b/pandas/tests/window/test_numba.py @@ -1,15 +1,14 @@ import numpy as np import pytest -import pandas.util._test_decorators as td +from pandas.util._test_decorators import skip_if_no from pandas import Series, option_context import pandas._testing as tm from pandas.core.util.numba_ import NUMBA_FUNC_CACHE -from pandas.util import _test_decorators as td -@td.skip_if_no("numba", "0.46.0") +@skip_if_no("numba", "0.46.0") @pytest.mark.filterwarnings("ignore:\\nThe keyword argument") # Filter warnings when parallel=True and the function can't be parallelized by Numba class TestApply: @@ -78,7 +77,7 @@ def func_2(x): tm.assert_series_equal(result, expected) -@td.skip_if_no("numba", "0.46.0") +@skip_if_no("numba", "0.46.0") def test_use_global_config(): def f(x): return np.mean(x) + 2 diff --git a/pandas/tests/window/test_timeseries_window.py b/pandas/tests/window/test_timeseries_window.py index 26d7f0a3d173f..654030d285877 100644 --- a/pandas/tests/window/test_timeseries_window.py +++ b/pandas/tests/window/test_timeseries_window.py @@ -11,6 +11,7 @@ date_range, to_datetime, ) +import pandas._testing as tm from pandas.tseries import offsets as offsets From 603776af2baf63b267302d12e6e9577b93a6feaf Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Fri, 17 Jul 2020 22:06:48 -0500 Subject: [PATCH 4/6] fix import --- asv_bench/benchmarks/tslibs/normalize.py | 2 +- pandas/tests/frame/indexing/test_indexing.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/asv_bench/benchmarks/tslibs/normalize.py b/asv_bench/benchmarks/tslibs/normalize.py index 7d4e0556f4d96..9a206410d8775 100644 --- a/asv_bench/benchmarks/tslibs/normalize.py +++ b/asv_bench/benchmarks/tslibs/normalize.py @@ -1,5 +1,5 @@ try: - from pandas._libs.tslibs import normalize_i8_timestamps, is_date_array_normalized + from pandas._libs.tslibs import is_date_array_normalized, normalize_i8_timestamps except ImportError: from pandas._libs.tslibs.conversion import ( normalize_i8_timestamps, diff --git a/pandas/tests/frame/indexing/test_indexing.py b/pandas/tests/frame/indexing/test_indexing.py index f8737876c3621..4679841c4f249 100644 --- a/pandas/tests/frame/indexing/test_indexing.py +++ b/pandas/tests/frame/indexing/test_indexing.py @@ -21,7 +21,6 @@ isna, notna, ) -import pandas._testing as tm import pandas.core.common as com from pandas.core.indexing import IndexingError From a2b138f7a1a9bbaa6547b9019bb85a24380cce20 Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Sat, 18 Jul 2020 11:12:10 -0500 Subject: [PATCH 5/6] fix import to appease mypy --- pandas/_testing.py | 17 ++++++++++------- pandas/core/indexes/base.py | 16 +++++++++++----- pandas/core/ops/array_ops.py | 20 +++++++++++--------- pandas/core/series.py | 5 +++-- pandas/core/util/hashing.py | 6 +++--- pandas/core/window/ewm.py | 8 ++++---- pandas/io/excel/_xlsxwriter.py | 4 ++-- pandas/io/excel/_xlwt.py | 4 ++-- pandas/io/json/_json.py | 5 +---- pandas/io/json/_table_schema.py | 4 +--- pandas/tests/groupby/test_bin_groupby.py | 9 +++++---- pandas/tests/test_algos.py | 7 ++++--- 12 files changed, 57 insertions(+), 48 deletions(-) diff --git a/pandas/_testing.py b/pandas/_testing.py index 1d002e95329e4..79261ca3a9f8c 100644 --- a/pandas/_testing.py +++ b/pandas/_testing.py @@ -22,8 +22,11 @@ set_locale, ) -from pandas._libs import testing as _testing from pandas._libs.lib import no_default +from pandas._libs.testing import ( + assert_almost_equal as _assert_almost_equal, + assert_dict_equal as _assert_dict_equal, +) from pandas._typing import Dtype, FilePathOrBuffer, FrameOrSeries from pandas.compat import _get_lzma_file, _import_lzma @@ -450,7 +453,7 @@ def assert_almost_equal( else: obj = "Input" assert_class_equal(left, right, obj=obj) - _testing.assert_almost_equal( + _assert_almost_equal( left, right, check_dtype=check_dtype, rtol=rtol, atol=atol, **kwargs ) @@ -486,7 +489,7 @@ def _check_isinstance(left, right, cls): def assert_dict_equal(left, right, compare_keys: bool = True): _check_isinstance(left, right, dict) - _testing.assert_dict_equal(left, right, compare_keys=compare_keys) + _assert_dict_equal(left, right, compare_keys=compare_keys) def randbool(size=(), p: float = 0.5): @@ -791,7 +794,7 @@ def _get_ilevel_values(index, level): msg = f"{obj} values are different ({np.round(diff, 5)} %)" raise_assert_detail(obj, msg, left, right) else: - _testing.assert_almost_equal( + _assert_almost_equal( left.values, right.values, rtol=rtol, @@ -1202,7 +1205,7 @@ def assert_extension_array_equal( left_valid, right_valid, obj="ExtensionArray", index_values=index_values ) else: - _testing.assert_almost_equal( + _assert_almost_equal( left_valid, right_valid, check_dtype=check_dtype, @@ -1368,7 +1371,7 @@ def assert_series_equal( elif is_interval_dtype(left.dtype) and is_interval_dtype(right.dtype): assert_interval_array_equal(left.array, right.array) elif is_categorical_dtype(left.dtype) or is_categorical_dtype(right.dtype): - _testing.assert_almost_equal( + _assert_almost_equal( left._values, right._values, rtol=rtol, @@ -1387,7 +1390,7 @@ def assert_series_equal( left._values, right._values, index_values=np.asarray(left.index) ) else: - _testing.assert_almost_equal( + _assert_almost_equal( left._values, right._values, rtol=rtol, diff --git a/pandas/core/indexes/base.py b/pandas/core/indexes/base.py index a8cd8efacb4dd..5a48ef447b199 100644 --- a/pandas/core/indexes/base.py +++ b/pandas/core/indexes/base.py @@ -16,7 +16,13 @@ import numpy as np -from pandas._libs import algos as libalgos, index as libindex, join as libjoin, lib +from pandas._libs import algos as libalgos, index as libindex, lib +from pandas._libs.join import ( + inner_join_indexer, + left_join_indexer, + left_join_indexer_unique, + outer_join_indexer, +) from pandas._libs.lib import is_datetime_array, no_default from pandas._libs.tslibs import OutOfBoundsDatetime, Timestamp from pandas._libs.tslibs.period import IncompatibleFrequency @@ -243,16 +249,16 @@ class Index(IndexOpsMixin, PandasObject): # Moreover, cython will choose the appropriate-dtyped sub-function # given the dtypes of the passed arguments def _left_indexer_unique(self, left, right): - return libjoin.left_join_indexer_unique(left, right) + return left_join_indexer_unique(left, right) def _left_indexer(self, left, right): - return libjoin.left_join_indexer(left, right) + return left_join_indexer(left, right) def _inner_indexer(self, left, right): - return libjoin.inner_join_indexer(left, right) + return inner_join_indexer(left, right) def _outer_indexer(self, left, right): - return libjoin.outer_join_indexer(left, right) + return outer_join_indexer(left, right) _typ = "index" _data: Union[ExtensionArray, np.ndarray] diff --git a/pandas/core/ops/array_ops.py b/pandas/core/ops/array_ops.py index 12300002b25ea..e10efef96e001 100644 --- a/pandas/core/ops/array_ops.py +++ b/pandas/core/ops/array_ops.py @@ -10,7 +10,9 @@ import numpy as np -from pandas._libs import Timedelta, Timestamp, lib, ops as libops +from pandas._libs import Timedelta, Timestamp +from pandas._libs.lib import is_integer, is_scalar, item_from_zerodim +from pandas._libs.ops import scalar_binop, scalar_compare, vec_binop, vec_compare from pandas._typing import ArrayLike from pandas.core.dtypes.cast import ( @@ -50,9 +52,9 @@ def comp_method_OBJECT_ARRAY(op, x, y): if x.shape != y.shape: raise ValueError("Shapes must match", x.shape, y.shape) - result = libops.vec_compare(x.ravel(), y.ravel(), op) + result = vec_compare(x.ravel(), y.ravel(), op) else: - result = libops.scalar_compare(x.ravel(), y, op) + result = scalar_compare(x.ravel(), y, op) return result.reshape(x.shape) @@ -210,7 +212,7 @@ def comparison_op(left: ArrayLike, right: Any, op) -> ArrayLike: lvalues = maybe_upcast_datetimelike_array(left) rvalues = right - rvalues = lib.item_from_zerodim(rvalues) + rvalues = item_from_zerodim(rvalues) if isinstance(rvalues, list): # TODO: same for tuples? rvalues = np.asarray(rvalues) @@ -265,14 +267,14 @@ def na_logical_op(x: np.ndarray, y, op): assert not (is_bool_dtype(x.dtype) and is_bool_dtype(y.dtype)) x = ensure_object(x) y = ensure_object(y) - result = libops.vec_binop(x.ravel(), y.ravel(), op) + result = vec_binop(x.ravel(), y.ravel(), op) else: # let null fall thru - assert lib.is_scalar(y) + assert is_scalar(y) if not isna(y): y = bool(y) try: - result = libops.scalar_binop(x, y, op) + result = scalar_binop(x, y, op) except ( TypeError, ValueError, @@ -322,7 +324,7 @@ def fill_bool(x, left=None): is_self_int_dtype = is_integer_dtype(left.dtype) - right = lib.item_from_zerodim(right) + right = item_from_zerodim(right) if is_list_like(right) and not hasattr(right, "dtype"): # e.g. list, tuple right = construct_1d_object_array_from_listlike(right) @@ -342,7 +344,7 @@ def fill_bool(x, left=None): else: # i.e. scalar - is_other_int_dtype = lib.is_integer(rvalues) + is_other_int_dtype = is_integer(rvalues) # For int vs int `^`, `|`, `&` are bitwise operators and return # integer dtypes. Otherwise these are boolean ops diff --git a/pandas/core/series.py b/pandas/core/series.py index e9d154c180632..9602f5a15d24a 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -22,8 +22,9 @@ from pandas._config import get_option -from pandas._libs import lib, properties, reshape, tslibs +from pandas._libs import lib, properties, tslibs from pandas._libs.lib import no_default +from pandas._libs.reshape import explode from pandas._typing import ( ArrayLike, Axis, @@ -3835,7 +3836,7 @@ def explode(self, ignore_index: bool = False) -> "Series": if not len(self) or not is_object_dtype(self): return self.copy() - values, counts = reshape.explode(np.asarray(self.array)) + values, counts = explode(np.asarray(self.array)) if ignore_index: index = ibase.default_index(len(values)) diff --git a/pandas/core/util/hashing.py b/pandas/core/util/hashing.py index e3e6f18400ec2..6684166d3b9de 100644 --- a/pandas/core/util/hashing.py +++ b/pandas/core/util/hashing.py @@ -6,7 +6,7 @@ import numpy as np -from pandas._libs import hashing as hashing +from pandas._libs.hashing import hash_object_array from pandas.core.dtypes.common import ( is_categorical_dtype, @@ -282,10 +282,10 @@ def hash_array( return _hash_categorical(cat, encoding, hash_key) try: - vals = hashing.hash_object_array(vals, hash_key, encoding) + vals = hash_object_array(vals, hash_key, encoding) except TypeError: # we have mixed types - vals = hashing.hash_object_array( + vals = hash_object_array( vals.astype(str).astype(object), hash_key, encoding ) diff --git a/pandas/core/window/ewm.py b/pandas/core/window/ewm.py index 48b7f92e9511a..c9c23681e5fdf 100644 --- a/pandas/core/window/ewm.py +++ b/pandas/core/window/ewm.py @@ -6,7 +6,7 @@ import numpy as np from pandas._libs.tslibs import Timedelta -from pandas._libs.window import aggregations as window_aggregations +from pandas._libs.window.aggregations import ewmcov from pandas._typing import FrameOrSeries, TimedeltaConvertibleTypes from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc @@ -380,7 +380,7 @@ def var(self, bias: bool = False, *args, **kwargs): nv.validate_window_func("var", args, kwargs) def f(arg): - return window_aggregations.ewmcov( + return ewmcov( arg, arg, self.com, self.adjust, self.ignore_na, self.min_periods, bias, ) @@ -424,7 +424,7 @@ def cov( def _get_cov(X, Y): X = self._shallow_copy(X) Y = self._shallow_copy(Y) - cov = window_aggregations.ewmcov( + cov = ewmcov( X._prep_values(), Y._prep_values(), self.com, @@ -476,7 +476,7 @@ def _get_corr(X, Y): Y = self._shallow_copy(Y) def _cov(x, y): - return window_aggregations.ewmcov( + return ewmcov( x, y, self.com, self.adjust, self.ignore_na, self.min_periods, 1, ) diff --git a/pandas/io/excel/_xlsxwriter.py b/pandas/io/excel/_xlsxwriter.py index 82593fcd43562..876e24bdc315e 100644 --- a/pandas/io/excel/_xlsxwriter.py +++ b/pandas/io/excel/_xlsxwriter.py @@ -1,4 +1,4 @@ -from pandas._libs import json as json +from pandas._libs.json import dumps from pandas.io.excel._base import ExcelWriter from pandas.io.excel._util import _validate_freeze_panes @@ -212,7 +212,7 @@ def write_cells( for cell in cells: val, fmt = self._value_with_fmt(cell.val) - stylekey = json.dumps(cell.style) + stylekey = dumps(cell.style) if fmt: stylekey += fmt diff --git a/pandas/io/excel/_xlwt.py b/pandas/io/excel/_xlwt.py index 302155544956a..305fd77814cee 100644 --- a/pandas/io/excel/_xlwt.py +++ b/pandas/io/excel/_xlwt.py @@ -1,4 +1,4 @@ -from pandas._libs import json as json +from pandas._libs.json import dumps from pandas.io.excel._base import ExcelWriter from pandas.io.excel._util import _validate_freeze_panes @@ -54,7 +54,7 @@ def write_cells( for cell in cells: val, fmt = self._value_with_fmt(cell.val) - stylekey = json.dumps(cell.style) + stylekey = dumps(cell.style) if fmt: stylekey += fmt diff --git a/pandas/io/json/_json.py b/pandas/io/json/_json.py index 28141f34dbd8d..003cbda052286 100644 --- a/pandas/io/json/_json.py +++ b/pandas/io/json/_json.py @@ -7,7 +7,7 @@ import numpy as np -from pandas._libs import json as json +from pandas._libs.json import dumps, loads from pandas._libs.tslibs import iNaT from pandas._typing import JSONSerializable from pandas.errors import AbstractMethodError @@ -24,9 +24,6 @@ from pandas.io.json._table_schema import build_table_schema, parse_table_schema from pandas.io.parsers import _validate_integer -loads = json.loads -dumps = json.dumps - TABLE_SCHEMA_VERSION = "0.20.0" diff --git a/pandas/io/json/_table_schema.py b/pandas/io/json/_table_schema.py index e2f64ada824be..7d0fc56bd0aab 100644 --- a/pandas/io/json/_table_schema.py +++ b/pandas/io/json/_table_schema.py @@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, Any, Dict, Optional, cast import warnings -from pandas._libs import json as json +from pandas._libs.json import loads from pandas._typing import DtypeObj, FrameOrSeries, JSONSerializable from pandas.core.dtypes.common import ( @@ -28,8 +28,6 @@ if TYPE_CHECKING: from pandas.core.indexes.multi import MultiIndex # noqa: F401 -loads = json.loads - def as_json_table_type(x: DtypeObj) -> str: """ diff --git a/pandas/tests/groupby/test_bin_groupby.py b/pandas/tests/groupby/test_bin_groupby.py index 1a518afc2e2da..34afc5e897208 100644 --- a/pandas/tests/groupby/test_bin_groupby.py +++ b/pandas/tests/groupby/test_bin_groupby.py @@ -1,7 +1,8 @@ import numpy as np import pytest -from pandas._libs import groupby, lib, reduction as libreduction +from pandas._libs import groupby, lib +from pandas._libs.reduction import SeriesBinGrouper, SeriesGrouper from pandas.core.dtypes.common import ensure_int64 @@ -15,7 +16,7 @@ def test_series_grouper(): labels = np.array([-1, -1, -1, 0, 0, 0, 1, 1, 1, 1], dtype=np.int64) - grouper = libreduction.SeriesGrouper(obj, np.mean, labels, 2, dummy) + grouper = SeriesGrouper(obj, np.mean, labels, 2, dummy) result, counts = grouper.get_result() expected = np.array([obj[3:6].mean(), obj[6:].mean()]) @@ -32,7 +33,7 @@ def test_series_grouper_requires_nonempty_raises(): labels = np.array([-1, -1, -1, 0, 0, 0, 1, 1, 1, 1], dtype=np.int64) with pytest.raises(ValueError, match="SeriesGrouper requires non-empty `series`"): - libreduction.SeriesGrouper(dummy, np.mean, labels, 2, dummy) + SeriesGrouper(dummy, np.mean, labels, 2, dummy) def test_series_bin_grouper(): @@ -41,7 +42,7 @@ def test_series_bin_grouper(): bins = np.array([3, 6]) - grouper = libreduction.SeriesBinGrouper(obj, np.mean, bins, dummy) + grouper = SeriesBinGrouper(obj, np.mean, bins, dummy) result, counts = grouper.get_result() expected = np.array([obj[:3].mean(), obj[3:6].mean(), obj[6:].mean()]) diff --git a/pandas/tests/test_algos.py b/pandas/tests/test_algos.py index 6d8ba5cf6afb8..fa3ffafdeb882 100644 --- a/pandas/tests/test_algos.py +++ b/pandas/tests/test_algos.py @@ -6,7 +6,8 @@ from numpy.random import RandomState import pytest -from pandas._libs import algos as libalgos, groupby as libgroupby, hashtable as ht +from pandas._libs import algos as libalgos, hashtable as ht +from pandas._libs.groupby import group_var_float32, group_var_float64 from pandas.compat.numpy import np_array_datetime64_compat from pandas.core.dtypes.common import ( @@ -1492,7 +1493,7 @@ def test_group_var_constant(self): class TestGroupVarFloat64(GroupVarTestMixin): __test__ = True - algo = staticmethod(libgroupby.group_var_float64) + algo = staticmethod(group_var_float64) dtype = np.float64 rtol = 1e-5 @@ -1515,7 +1516,7 @@ def test_group_var_large_inputs(self): class TestGroupVarFloat32(GroupVarTestMixin): __test__ = True - algo = staticmethod(libgroupby.group_var_float32) + algo = staticmethod(group_var_float32) dtype = np.float32 rtol = 1e-2 From 29079e4d2388998068f2130bccaae996f020d287 Mon Sep 17 00:00:00 2001 From: Fangchen Li Date: Sat, 18 Jul 2020 12:05:38 -0500 Subject: [PATCH 6/6] fix redefinition --- pandas/core/ops/array_ops.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/core/ops/array_ops.py b/pandas/core/ops/array_ops.py index e10efef96e001..46213b51a188b 100644 --- a/pandas/core/ops/array_ops.py +++ b/pandas/core/ops/array_ops.py @@ -11,7 +11,7 @@ import numpy as np from pandas._libs import Timedelta, Timestamp -from pandas._libs.lib import is_integer, is_scalar, item_from_zerodim +from pandas._libs.lib import is_integer, is_scalar as lib_is_scalar, item_from_zerodim from pandas._libs.ops import scalar_binop, scalar_compare, vec_binop, vec_compare from pandas._typing import ArrayLike @@ -270,7 +270,7 @@ def na_logical_op(x: np.ndarray, y, op): result = vec_binop(x.ravel(), y.ravel(), op) else: # let null fall thru - assert is_scalar(y) + assert lib_is_scalar(y) if not isna(y): y = bool(y) try: