From 6a2140ecbabf61f7e3605f4610bee02b7b201647 Mon Sep 17 00:00:00 2001 From: Charles David Date: Sun, 28 Oct 2018 01:08:11 +0200 Subject: [PATCH 1/3] style: fix import format at pandas/core/reshape --- pandas/core/reshape/api.py | 6 ++-- pandas/core/reshape/concat.py | 21 +++++++------ pandas/core/reshape/melt.py | 15 ++++------ pandas/core/reshape/merge.py | 55 +++++++++++++--------------------- pandas/core/reshape/pivot.py | 23 +++++++------- pandas/core/reshape/reshape.py | 41 +++++++++++-------------- pandas/core/reshape/tile.py | 26 +++++++--------- pandas/core/reshape/util.py | 3 +- setup.cfg | 8 ----- 9 files changed, 82 insertions(+), 116 deletions(-) diff --git a/pandas/core/reshape/api.py b/pandas/core/reshape/api.py index 7ac1c0cb52fe3..3c76eef809c7a 100644 --- a/pandas/core/reshape/api.py +++ b/pandas/core/reshape/api.py @@ -1,8 +1,8 @@ # flake8: noqa from pandas.core.reshape.concat import concat -from pandas.core.reshape.melt import melt, lreshape, wide_to_long +from pandas.core.reshape.melt import lreshape, melt, wide_to_long +from pandas.core.reshape.merge import merge, merge_asof, merge_ordered +from pandas.core.reshape.pivot import crosstab, pivot, pivot_table from pandas.core.reshape.reshape import get_dummies -from pandas.core.reshape.merge import merge, merge_ordered, merge_asof -from pandas.core.reshape.pivot import pivot_table, pivot, crosstab from pandas.core.reshape.tile import cut, qcut diff --git a/pandas/core/reshape/concat.py b/pandas/core/reshape/concat.py index aa380d95e5f36..661a26f8a54cb 100644 --- a/pandas/core/reshape/concat.py +++ b/pandas/core/reshape/concat.py @@ -3,17 +3,20 @@ """ import numpy as np -from pandas import compat, DataFrame, Series, Index, MultiIndex -from pandas.core.index import (_get_objs_combined_axis, - ensure_index, _get_consensus_names, - _all_indexes_same) -from pandas.core.arrays.categorical import (_factorize_from_iterable, - _factorize_from_iterables) -from pandas.core.internals import concatenate_block_managers -from pandas.core import common as com + +import pandas.core.dtypes.concat as _concat import pandas.core.indexes.base as ibase +from pandas import DataFrame, Index, MultiIndex, Series, compat +from pandas.core import common as com +from pandas.core.arrays.categorical import ( + _factorize_from_iterable, _factorize_from_iterables +) from pandas.core.generic import NDFrame -import pandas.core.dtypes.concat as _concat +from pandas.core.index import ( + _all_indexes_same, _get_consensus_names, _get_objs_combined_axis, + ensure_index +) +from pandas.core.internals import concatenate_block_managers # --------------------------------------------------------------------- # Concatenate DataFrame objects diff --git a/pandas/core/reshape/melt.py b/pandas/core/reshape/melt.py index 26221143c0cdf..a7064da73bea0 100644 --- a/pandas/core/reshape/melt.py +++ b/pandas/core/reshape/melt.py @@ -1,21 +1,18 @@ # pylint: disable=E1101,E1103 # pylint: disable=W0703,W0622,W0613,W0201 +import re + import numpy as np -from pandas.core.dtypes.common import is_list_like from pandas import compat from pandas.core.arrays import Categorical - +from pandas.core.dtypes.common import is_extension_type, is_list_like from pandas.core.dtypes.generic import ABCMultiIndex - -from pandas.core.frame import _shared_docs -from pandas.util._decorators import Appender - -import re from pandas.core.dtypes.missing import notna -from pandas.core.dtypes.common import is_extension_type -from pandas.core.tools.numeric import to_numeric +from pandas.core.frame import _shared_docs from pandas.core.reshape.concat import concat +from pandas.core.tools.numeric import to_numeric +from pandas.util._decorators import Appender @Appender(_shared_docs['melt'] % diff --git a/pandas/core/reshape/merge.py b/pandas/core/reshape/merge.py index 5d4a0c718499a..4c690cc01f661 100644 --- a/pandas/core/reshape/merge.py +++ b/pandas/core/reshape/merge.py @@ -3,49 +3,34 @@ """ import copy -import warnings import string +import warnings import numpy as np -from pandas.compat import range, lzip, zip, map, filter -import pandas.compat as compat -from pandas import (Categorical, DataFrame, - Index, MultiIndex, Timedelta, Series) -from pandas.core.arrays.categorical import _recode_for_categories -from pandas.core.frame import _merge_doc -from pandas.core.dtypes.common import ( - is_datetime64tz_dtype, - is_datetime64_dtype, - needs_i8_conversion, - is_int64_dtype, - is_array_like, - is_categorical_dtype, - is_integer_dtype, - is_float_dtype, - is_number, - is_numeric_dtype, - is_integer, - is_int_or_datetime_dtype, - is_dtype_equal, - is_bool, - is_bool_dtype, - is_list_like, - is_datetimelike, - ensure_int64, - ensure_float64, - ensure_object) -from pandas.core.dtypes.missing import na_value_for_dtype, isnull -from pandas.core.internals import (items_overlap_with_suffix, - concatenate_block_managers) -from pandas.util._decorators import Appender, Substitution - -from pandas.core.sorting import is_int64_overflow_possible +import pandas.compat as compat import pandas.core.algorithms as algos -import pandas.core.sorting as sorting import pandas.core.common as com +import pandas.core.sorting as sorting +from pandas import Categorical, DataFrame, Index, MultiIndex, Series, Timedelta from pandas._libs import hashtable as libhashtable, join as libjoin, lib +from pandas.compat import filter, lzip, map, range, zip +from pandas.core.arrays.categorical import _recode_for_categories +from pandas.core.dtypes.common import ( + ensure_float64, ensure_int64, ensure_object, is_array_like, is_bool, + is_bool_dtype, is_categorical_dtype, is_datetime64_dtype, + is_datetime64tz_dtype, is_datetimelike, is_dtype_equal, is_float_dtype, + is_int64_dtype, is_int_or_datetime_dtype, is_integer, is_integer_dtype, + is_list_like, is_number, is_numeric_dtype, needs_i8_conversion +) +from pandas.core.dtypes.missing import isnull, na_value_for_dtype +from pandas.core.frame import _merge_doc +from pandas.core.internals import ( + concatenate_block_managers, items_overlap_with_suffix +) +from pandas.core.sorting import is_int64_overflow_possible from pandas.errors import MergeError +from pandas.util._decorators import Appender, Substitution @Substitution('\nleft : DataFrame') diff --git a/pandas/core/reshape/pivot.py b/pandas/core/reshape/pivot.py index 22e591e776a22..c098b38bc250a 100644 --- a/pandas/core/reshape/pivot.py +++ b/pandas/core/reshape/pivot.py @@ -1,26 +1,25 @@ # pylint: disable=E1103 -from pandas.core.dtypes.common import ( - is_list_like, is_scalar, is_integer_dtype) -from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries -from pandas.core.dtypes.cast import maybe_downcast_to_dtype +import numpy as np -from pandas.core.reshape.concat import concat -from pandas.core.series import Series +import pandas.core.common as com +from pandas import compat +from pandas.compat import lrange, range, zip +from pandas.core.dtypes.cast import maybe_downcast_to_dtype +from pandas.core.dtypes.common import is_integer_dtype, is_list_like, is_scalar +from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries +from pandas.core.frame import _shared_docs from pandas.core.groupby import Grouper -from pandas.core.reshape.util import cartesian_product from pandas.core.index import Index, MultiIndex, _get_objs_combined_axis -from pandas.compat import range, lrange, zip -from pandas import compat -import pandas.core.common as com +from pandas.core.reshape.concat import concat +from pandas.core.reshape.util import cartesian_product +from pandas.core.series import Series from pandas.util._decorators import Appender, Substitution -from pandas.core.frame import _shared_docs # Note: We need to make sure `frame` is imported before `pivot`, otherwise # _shared_docs['pivot_table'] will not yet exist. TODO: Fix this dependency -import numpy as np @Substitution('\ndata : DataFrame') diff --git a/pandas/core/reshape/reshape.py b/pandas/core/reshape/reshape.py index 03b77f0e787f0..03396eb202c53 100644 --- a/pandas/core/reshape/reshape.py +++ b/pandas/core/reshape/reshape.py @@ -1,36 +1,31 @@ # pylint: disable=E1101,E1103 # pylint: disable=W0703,W0622,W0613,W0201 -from pandas.compat import range, text_type, zip, u, PY2 -from pandas import compat -from functools import partial import itertools +from functools import partial import numpy as np -from pandas.core.dtypes.common import ( - ensure_platform_int, - is_list_like, is_bool_dtype, - is_extension_array_dtype, - needs_i8_conversion, is_sparse, is_object_dtype) +import pandas.core.algorithms as algos +from pandas import compat +from pandas._libs import algos as _algos, reshape as _reshape +from pandas._libs.sparse import IntIndex +from pandas.compat import PY2, range, text_type, u, zip +from pandas.core.arrays import Categorical, SparseArray +from pandas.core.arrays.categorical import _factorize_from_iterable from pandas.core.dtypes.cast import maybe_promote +from pandas.core.dtypes.common import ( + ensure_platform_int, is_bool_dtype, is_extension_array_dtype, is_list_like, + is_object_dtype, is_sparse, needs_i8_conversion +) from pandas.core.dtypes.missing import notna - -from pandas.core.series import Series from pandas.core.frame import DataFrame - -from pandas.core.sparse.api import SparseDataFrame, SparseSeries -from pandas.core.arrays import SparseArray -from pandas._libs.sparse import IntIndex - -from pandas.core.arrays import Categorical -from pandas.core.arrays.categorical import _factorize_from_iterable -from pandas.core.sorting import (get_group_index, get_compressed_ids, - compress_group_index, decons_obs_group_ids) - -import pandas.core.algorithms as algos -from pandas._libs import algos as _algos, reshape as _reshape - from pandas.core.index import Index, MultiIndex +from pandas.core.series import Series +from pandas.core.sorting import ( + compress_group_index, decons_obs_group_ids, get_compressed_ids, + get_group_index +) +from pandas.core.sparse.api import SparseDataFrame, SparseSeries class _Unstacker(object): diff --git a/pandas/core/reshape/tile.py b/pandas/core/reshape/tile.py index 031c94c06d3c8..722f2ec97b475 100644 --- a/pandas/core/reshape/tile.py +++ b/pandas/core/reshape/tile.py @@ -3,25 +3,21 @@ """ from functools import partial -from pandas.core.dtypes.missing import isna -from pandas.core.dtypes.common import ( - is_integer, - is_scalar, - is_categorical_dtype, - is_datetime64_dtype, - is_timedelta64_dtype, - is_datetime64tz_dtype, - is_datetime_or_timedelta_dtype, - ensure_int64) +import numpy as np import pandas.core.algorithms as algos import pandas.core.nanops as nanops +from pandas import ( + Categorical, Index, Interval, IntervalIndex, Series, Timedelta, Timestamp, + to_datetime, to_timedelta +) from pandas._libs.lib import infer_dtype -from pandas import (to_timedelta, to_datetime, - Categorical, Timestamp, Timedelta, - Series, Index, Interval, IntervalIndex) - -import numpy as np +from pandas.core.dtypes.common import ( + ensure_int64, is_categorical_dtype, is_datetime64_dtype, + is_datetime64tz_dtype, is_datetime_or_timedelta_dtype, is_integer, + is_scalar, is_timedelta64_dtype +) +from pandas.core.dtypes.missing import isna def cut(x, bins, right=True, labels=None, retbins=False, precision=3, diff --git a/pandas/core/reshape/util.py b/pandas/core/reshape/util.py index 1c2033d90cd8a..e0f09d6da1f0a 100644 --- a/pandas/core/reshape/util.py +++ b/pandas/core/reshape/util.py @@ -1,9 +1,8 @@ import numpy as np -from pandas.core.dtypes.common import is_list_like - from pandas.compat import reduce from pandas.core import common as com +from pandas.core.dtypes.common import is_list_like def cartesian_product(X): diff --git a/setup.cfg b/setup.cfg index a5006d66868f6..255fb72517b9d 100644 --- a/setup.cfg +++ b/setup.cfg @@ -167,14 +167,6 @@ skip= pandas/core/internals/concat.py, pandas/core/internals/managers.py, pandas/core/internals/blocks.py, - pandas/core/reshape/concat.py, - pandas/core/reshape/tile.py, - pandas/core/reshape/melt.py, - pandas/core/reshape/api.py, - pandas/core/reshape/util.py, - pandas/core/reshape/merge.py, - pandas/core/reshape/reshape.py, - pandas/core/reshape/pivot.py, pandas/core/sparse/api.py, pandas/core/sparse/series.py, pandas/core/sparse/frame.py, From 51da8c7092fe0cbdb0b4c7f1aeb8d05e782d4c48 Mon Sep 17 00:00:00 2001 From: Charles David Date: Mon, 29 Oct 2018 10:30:51 +0100 Subject: [PATCH 2/3] style: fix flake8 E303 --- pandas/core/reshape/pivot.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pandas/core/reshape/pivot.py b/pandas/core/reshape/pivot.py index c098b38bc250a..5ccd68a000e3a 100644 --- a/pandas/core/reshape/pivot.py +++ b/pandas/core/reshape/pivot.py @@ -1,6 +1,4 @@ # pylint: disable=E1103 - - import numpy as np import pandas.core.common as com @@ -17,11 +15,9 @@ from pandas.core.series import Series from pandas.util._decorators import Appender, Substitution + # Note: We need to make sure `frame` is imported before `pivot`, otherwise # _shared_docs['pivot_table'] will not yet exist. TODO: Fix this dependency - - - @Substitution('\ndata : DataFrame') @Appender(_shared_docs['pivot_table'], indents=1) def pivot_table(data, values=None, index=None, columns=None, aggfunc='mean', From f5d5b2928128e0b47b78bce15d40a57e3c6b292d Mon Sep 17 00:00:00 2001 From: Charles David Date: Wed, 31 Oct 2018 23:29:21 +0100 Subject: [PATCH 3/3] style: re-apply isort after isort config changes --- pandas/core/reshape/concat.py | 9 ++++----- pandas/core/reshape/melt.py | 8 +++++--- pandas/core/reshape/merge.py | 24 ++++++++++++------------ pandas/core/reshape/pivot.py | 8 +++++--- pandas/core/reshape/reshape.py | 18 +++++++++--------- pandas/core/reshape/tile.py | 16 ++++++++-------- pandas/core/reshape/util.py | 4 +++- 7 files changed, 46 insertions(+), 41 deletions(-) diff --git a/pandas/core/reshape/concat.py b/pandas/core/reshape/concat.py index 661a26f8a54cb..9f8564541a936 100644 --- a/pandas/core/reshape/concat.py +++ b/pandas/core/reshape/concat.py @@ -5,17 +5,16 @@ import numpy as np import pandas.core.dtypes.concat as _concat -import pandas.core.indexes.base as ibase + from pandas import DataFrame, Index, MultiIndex, Series, compat from pandas.core import common as com from pandas.core.arrays.categorical import ( - _factorize_from_iterable, _factorize_from_iterables -) + _factorize_from_iterable, _factorize_from_iterables) from pandas.core.generic import NDFrame from pandas.core.index import ( _all_indexes_same, _get_consensus_names, _get_objs_combined_axis, - ensure_index -) + ensure_index) +import pandas.core.indexes.base as ibase from pandas.core.internals import concatenate_block_managers # --------------------------------------------------------------------- diff --git a/pandas/core/reshape/melt.py b/pandas/core/reshape/melt.py index a7064da73bea0..6596e055db1a8 100644 --- a/pandas/core/reshape/melt.py +++ b/pandas/core/reshape/melt.py @@ -4,15 +4,17 @@ import numpy as np -from pandas import compat -from pandas.core.arrays import Categorical +from pandas.util._decorators import Appender + from pandas.core.dtypes.common import is_extension_type, is_list_like from pandas.core.dtypes.generic import ABCMultiIndex from pandas.core.dtypes.missing import notna + +from pandas import compat +from pandas.core.arrays import Categorical from pandas.core.frame import _shared_docs from pandas.core.reshape.concat import concat from pandas.core.tools.numeric import to_numeric -from pandas.util._decorators import Appender @Appender(_shared_docs['melt'] % diff --git a/pandas/core/reshape/merge.py b/pandas/core/reshape/merge.py index 4c690cc01f661..e09cf0a527ff9 100644 --- a/pandas/core/reshape/merge.py +++ b/pandas/core/reshape/merge.py @@ -8,29 +8,29 @@ import numpy as np -import pandas.compat as compat -import pandas.core.algorithms as algos -import pandas.core.common as com -import pandas.core.sorting as sorting -from pandas import Categorical, DataFrame, Index, MultiIndex, Series, Timedelta from pandas._libs import hashtable as libhashtable, join as libjoin, lib +import pandas.compat as compat from pandas.compat import filter, lzip, map, range, zip -from pandas.core.arrays.categorical import _recode_for_categories +from pandas.errors import MergeError +from pandas.util._decorators import Appender, Substitution + from pandas.core.dtypes.common import ( ensure_float64, ensure_int64, ensure_object, is_array_like, is_bool, is_bool_dtype, is_categorical_dtype, is_datetime64_dtype, is_datetime64tz_dtype, is_datetimelike, is_dtype_equal, is_float_dtype, is_int64_dtype, is_int_or_datetime_dtype, is_integer, is_integer_dtype, - is_list_like, is_number, is_numeric_dtype, needs_i8_conversion -) + is_list_like, is_number, is_numeric_dtype, needs_i8_conversion) from pandas.core.dtypes.missing import isnull, na_value_for_dtype + +from pandas import Categorical, DataFrame, Index, MultiIndex, Series, Timedelta +import pandas.core.algorithms as algos +from pandas.core.arrays.categorical import _recode_for_categories +import pandas.core.common as com from pandas.core.frame import _merge_doc from pandas.core.internals import ( - concatenate_block_managers, items_overlap_with_suffix -) + concatenate_block_managers, items_overlap_with_suffix) +import pandas.core.sorting as sorting from pandas.core.sorting import is_int64_overflow_possible -from pandas.errors import MergeError -from pandas.util._decorators import Appender, Substitution @Substitution('\nleft : DataFrame') diff --git a/pandas/core/reshape/pivot.py b/pandas/core/reshape/pivot.py index 5ccd68a000e3a..ec4cdffc56435 100644 --- a/pandas/core/reshape/pivot.py +++ b/pandas/core/reshape/pivot.py @@ -1,19 +1,21 @@ # pylint: disable=E1103 import numpy as np -import pandas.core.common as com -from pandas import compat from pandas.compat import lrange, range, zip +from pandas.util._decorators import Appender, Substitution + from pandas.core.dtypes.cast import maybe_downcast_to_dtype from pandas.core.dtypes.common import is_integer_dtype, is_list_like, is_scalar from pandas.core.dtypes.generic import ABCDataFrame, ABCSeries + +from pandas import compat +import pandas.core.common as com from pandas.core.frame import _shared_docs from pandas.core.groupby import Grouper from pandas.core.index import Index, MultiIndex, _get_objs_combined_axis from pandas.core.reshape.concat import concat from pandas.core.reshape.util import cartesian_product from pandas.core.series import Series -from pandas.util._decorators import Appender, Substitution # Note: We need to make sure `frame` is imported before `pivot`, otherwise diff --git a/pandas/core/reshape/reshape.py b/pandas/core/reshape/reshape.py index 03396eb202c53..d3b677a1df2a3 100644 --- a/pandas/core/reshape/reshape.py +++ b/pandas/core/reshape/reshape.py @@ -1,30 +1,30 @@ # pylint: disable=E1101,E1103 # pylint: disable=W0703,W0622,W0613,W0201 -import itertools from functools import partial +import itertools import numpy as np -import pandas.core.algorithms as algos -from pandas import compat from pandas._libs import algos as _algos, reshape as _reshape from pandas._libs.sparse import IntIndex from pandas.compat import PY2, range, text_type, u, zip -from pandas.core.arrays import Categorical, SparseArray -from pandas.core.arrays.categorical import _factorize_from_iterable + from pandas.core.dtypes.cast import maybe_promote from pandas.core.dtypes.common import ( ensure_platform_int, is_bool_dtype, is_extension_array_dtype, is_list_like, - is_object_dtype, is_sparse, needs_i8_conversion -) + is_object_dtype, is_sparse, needs_i8_conversion) from pandas.core.dtypes.missing import notna + +from pandas import compat +import pandas.core.algorithms as algos +from pandas.core.arrays import Categorical, SparseArray +from pandas.core.arrays.categorical import _factorize_from_iterable from pandas.core.frame import DataFrame from pandas.core.index import Index, MultiIndex from pandas.core.series import Series from pandas.core.sorting import ( compress_group_index, decons_obs_group_ids, get_compressed_ids, - get_group_index -) + get_group_index) from pandas.core.sparse.api import SparseDataFrame, SparseSeries diff --git a/pandas/core/reshape/tile.py b/pandas/core/reshape/tile.py index 722f2ec97b475..4a863372eea13 100644 --- a/pandas/core/reshape/tile.py +++ b/pandas/core/reshape/tile.py @@ -5,20 +5,20 @@ import numpy as np -import pandas.core.algorithms as algos -import pandas.core.nanops as nanops -from pandas import ( - Categorical, Index, Interval, IntervalIndex, Series, Timedelta, Timestamp, - to_datetime, to_timedelta -) from pandas._libs.lib import infer_dtype + from pandas.core.dtypes.common import ( ensure_int64, is_categorical_dtype, is_datetime64_dtype, is_datetime64tz_dtype, is_datetime_or_timedelta_dtype, is_integer, - is_scalar, is_timedelta64_dtype -) + is_scalar, is_timedelta64_dtype) from pandas.core.dtypes.missing import isna +from pandas import ( + Categorical, Index, Interval, IntervalIndex, Series, Timedelta, Timestamp, + to_datetime, to_timedelta) +import pandas.core.algorithms as algos +import pandas.core.nanops as nanops + def cut(x, bins, right=True, labels=None, retbins=False, precision=3, include_lowest=False, duplicates='raise'): diff --git a/pandas/core/reshape/util.py b/pandas/core/reshape/util.py index e0f09d6da1f0a..07f7272398777 100644 --- a/pandas/core/reshape/util.py +++ b/pandas/core/reshape/util.py @@ -1,9 +1,11 @@ import numpy as np from pandas.compat import reduce -from pandas.core import common as com + from pandas.core.dtypes.common import is_list_like +from pandas.core import common as com + def cartesian_product(X): """