Skip to content

[CLN] cleanup import reverse-dependencies #21844

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 11, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions pandas/io/clipboards.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
""" io on the clipboard """
from pandas import compat, get_option, option_context, DataFrame
from pandas.compat import StringIO, PY2, PY3
import warnings

from pandas.compat import StringIO, PY2, PY3

from pandas.core.dtypes.generic import ABCDataFrame
from pandas import compat, get_option, option_context


def read_clipboard(sep=r'\s+', **kwargs): # pragma: no cover
r"""
Expand Down Expand Up @@ -131,7 +134,7 @@ def to_clipboard(obj, excel=True, sep=None, **kwargs): # pragma: no cover
elif sep is not None:
warnings.warn('to_clipboard with excel=False ignores the sep argument')

if isinstance(obj, DataFrame):
if isinstance(obj, ABCDataFrame):
# str(df) has various unhelpful defaults, like truncation
with option_context('display.max_colwidth', 999999):
objstr = obj.to_string(**kwargs)
Expand Down
29 changes: 16 additions & 13 deletions pandas/io/excel.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,32 @@
import os
import abc
import warnings
import numpy as np
from textwrap import fill
from io import UnsupportedOperation
from distutils.version import LooseVersion

import numpy as np

import pandas._libs.json as json
from pandas.util._decorators import Appender, deprecate_kwarg
from pandas.errors import EmptyDataError

import pandas.compat as compat
from pandas.compat import (map, zip, reduce, range, lrange, u, add_metaclass,
string_types, OrderedDict)

from pandas.core.dtypes.common import (
is_integer, is_float,
is_bool, is_list_like)

from pandas.core import config
from pandas.core.frame import DataFrame

from pandas.io.parsers import TextParser
from pandas.errors import EmptyDataError
from pandas.io.common import (_is_url, _urlopen, _validate_header_arg,
get_filepath_or_buffer, _NA_VALUES,
_stringify_path)
import pandas._libs.json as json
from pandas.compat import (map, zip, reduce, range, lrange, u, add_metaclass,
string_types, OrderedDict)
from pandas.core import config
from pandas.io.formats.printing import pprint_thing
import pandas.compat as compat
from warnings import warn
from distutils.version import LooseVersion
from pandas.util._decorators import Appender, deprecate_kwarg
from textwrap import fill

__all__ = ["read_excel", "ExcelWriter", "ExcelFile"]

Expand Down Expand Up @@ -527,8 +530,8 @@ def _parse_excel(self,
"is not implemented")

if parse_dates is True and index_col is None:
warn("The 'parse_dates=True' keyword of read_excel was provided"
" without an 'index_col' keyword value.")
warnings.warn("The 'parse_dates=True' keyword of read_excel was "
"provided without an 'index_col' keyword value.")

import xlrd
from xlrd import (xldate, XL_CELL_DATE,
Expand Down
30 changes: 17 additions & 13 deletions pandas/io/formats/csvs.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,20 @@

import csv as csvlib
from zipfile import ZipFile

import numpy as np

from pandas.core.dtypes.missing import notna
from pandas.core.index import Index, MultiIndex
from pandas._libs import writers as libwriters

from pandas import compat
from pandas.compat import (StringIO, range, zip)
from pandas.compat import StringIO, range, zip

from pandas.core.dtypes.missing import notna
from pandas.core.dtypes.generic import (
ABCMultiIndex, ABCPeriodIndex, ABCDatetimeIndex, ABCIndexClass)

from pandas.io.common import (_get_handle, UnicodeWriter, _expand_user,
_stringify_path)
from pandas._libs import writers as libwriters
from pandas.core.indexes.datetimes import DatetimeIndex
from pandas.core.indexes.period import PeriodIndex


class CSVFormatter(object):
Expand Down Expand Up @@ -68,7 +70,7 @@ def __init__(self, obj, path_or_buf=None, sep=",", na_rep='',
self.date_format = date_format

self.tupleize_cols = tupleize_cols
self.has_mi_columns = (isinstance(obj.columns, MultiIndex) and
self.has_mi_columns = (isinstance(obj.columns, ABCMultiIndex) and
not self.tupleize_cols)

# validate mi options
Expand All @@ -78,7 +80,7 @@ def __init__(self, obj, path_or_buf=None, sep=",", na_rep='',
"columns")

if cols is not None:
if isinstance(cols, Index):
if isinstance(cols, ABCIndexClass):
cols = cols.to_native_types(na_rep=na_rep,
float_format=float_format,
date_format=date_format,
Expand All @@ -90,7 +92,7 @@ def __init__(self, obj, path_or_buf=None, sep=",", na_rep='',
# update columns to include possible multiplicity of dupes
# and make sure sure cols is just a list of labels
cols = self.obj.columns
if isinstance(cols, Index):
if isinstance(cols, ABCIndexClass):
cols = cols.to_native_types(na_rep=na_rep,
float_format=float_format,
date_format=date_format,
Expand All @@ -111,8 +113,9 @@ def __init__(self, obj, path_or_buf=None, sep=",", na_rep='',
self.chunksize = int(chunksize)

self.data_index = obj.index
if (isinstance(self.data_index, (DatetimeIndex, PeriodIndex)) and
if (isinstance(self.data_index, (ABCDatetimeIndex, ABCPeriodIndex)) and
date_format is not None):
from pandas import Index
self.data_index = Index([x.strftime(date_format) if notna(x) else
'' for x in self.data_index])

Expand Down Expand Up @@ -197,7 +200,8 @@ def _save_header(self):
header = self.header
encoded_labels = []

has_aliases = isinstance(header, (tuple, list, np.ndarray, Index))
has_aliases = isinstance(header, (tuple, list, np.ndarray,
ABCIndexClass))
if not (has_aliases or self.header):
return
if has_aliases:
Expand All @@ -214,7 +218,7 @@ def _save_header(self):
# should write something for index label
if index_label is not False:
if index_label is None:
if isinstance(obj.index, MultiIndex):
if isinstance(obj.index, ABCMultiIndex):
index_label = []
for i, name in enumerate(obj.index.names):
if name is None:
Expand All @@ -227,7 +231,7 @@ def _save_header(self):
else:
index_label = [index_label]
elif not isinstance(index_label,
(list, tuple, np.ndarray, Index)):
(list, tuple, np.ndarray, ABCIndexClass)):
# given a string for a DF with Index
index_label = [index_label]

Expand Down
23 changes: 13 additions & 10 deletions pandas/io/formats/excel.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,15 @@
import numpy as np

from pandas.compat import reduce
from pandas.io.formats.css import CSSResolver, CSSWarning
from pandas.io.formats.printing import pprint_thing
import pandas.core.common as com

from pandas.core.dtypes.common import is_float, is_scalar
from pandas.core.dtypes import missing
from pandas import Index, MultiIndex, PeriodIndex
from pandas.core.dtypes.generic import ABCMultiIndex, ABCPeriodIndex
from pandas import Index

from pandas.io.formats.css import CSSResolver, CSSWarning
from pandas.io.formats.printing import pprint_thing
from pandas.io.formats.format import get_level_lengths


Expand Down Expand Up @@ -414,7 +417,7 @@ def _format_header_mi(self):
coloffset = 0
lnum = 0

if self.index and isinstance(self.df.index, MultiIndex):
if self.index and isinstance(self.df.index, ABCMultiIndex):
coloffset = len(self.df.index[0]) - 1

if self.merge_cells:
Expand Down Expand Up @@ -449,7 +452,7 @@ def _format_header_regular(self):

if self.index:
coloffset = 1
if isinstance(self.df.index, MultiIndex):
if isinstance(self.df.index, ABCMultiIndex):
coloffset = len(self.df.index[0])

colnames = self.columns
Expand All @@ -466,7 +469,7 @@ def _format_header_regular(self):
header_style)

def _format_header(self):
if isinstance(self.columns, MultiIndex):
if isinstance(self.columns, ABCMultiIndex):
gen = self._format_header_mi()
else:
gen = self._format_header_regular()
Expand All @@ -483,7 +486,7 @@ def _format_header(self):

def _format_body(self):

if isinstance(self.df.index, MultiIndex):
if isinstance(self.df.index, ABCMultiIndex):
return self._format_hierarchical_rows()
else:
return self._format_regular_rows()
Expand All @@ -507,7 +510,7 @@ def _format_regular_rows(self):
else:
index_label = self.df.index.names[0]

if isinstance(self.columns, MultiIndex):
if isinstance(self.columns, ABCMultiIndex):
self.rowcounter += 1

if index_label and self.header is not False:
Expand All @@ -516,7 +519,7 @@ def _format_regular_rows(self):

# write index_values
index_values = self.df.index
if isinstance(self.df.index, PeriodIndex):
if isinstance(self.df.index, ABCPeriodIndex):
index_values = self.df.index.to_timestamp()

for idx, idxval in enumerate(index_values):
Expand Down Expand Up @@ -548,7 +551,7 @@ def _format_hierarchical_rows(self):
# with index names (blank if None) for
# unambigous round-trip, unless not merging,
# in which case the names all go on one row Issue #11328
if isinstance(self.columns, MultiIndex) and self.merge_cells:
if isinstance(self.columns, ABCMultiIndex) and self.merge_cells:
self.rowcounter += 1

# if index labels are not empty go ahead and dump
Expand Down
22 changes: 10 additions & 12 deletions pandas/io/formats/format.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import numpy as np

from pandas._libs import lib
from pandas._libs.tslibs import iNaT, Timestamp, Timedelta
from pandas._libs.tslibs import NaT, iNaT, Timestamp, Timedelta
from pandas._libs.tslib import format_array_from_datetime

from pandas import compat
Expand All @@ -33,20 +33,18 @@
is_datetime64_dtype,
is_timedelta64_dtype,
is_list_like)
from pandas.core.dtypes.generic import ABCSparseArray
from pandas.core.dtypes.generic import ABCSparseArray, ABCMultiIndex
from pandas.core.base import PandasObject
import pandas.core.common as com
from pandas.core.index import Index, MultiIndex, _ensure_index
from pandas.core.index import Index, _ensure_index
from pandas.core.config import get_option, set_option
from pandas.core.indexes.datetimes import DatetimeIndex
from pandas.core.indexes.period import PeriodIndex

from pandas.io.formats.terminal import get_terminal_size
from pandas.io.common import (_expand_user, _stringify_path)
from pandas.io.common import _expand_user, _stringify_path
from pandas.io.formats.printing import adjoin, justify, pprint_thing

import pandas as pd


common_docstring = """
Parameters
Expand Down Expand Up @@ -248,7 +246,7 @@ def _get_footer(self):

def _get_formatted_index(self):
index = self.tr_series.index
is_multi = isinstance(index, MultiIndex)
is_multi = isinstance(index, ABCMultiIndex)

if is_multi:
have_header = any(name for name in index.names)
Expand Down Expand Up @@ -768,7 +766,7 @@ def _get_formatted_column_labels(self, frame):

columns = frame.columns

if isinstance(columns, MultiIndex):
if isinstance(columns, ABCMultiIndex):
fmt_columns = columns.format(sparsify=False, adjoin=False)
fmt_columns = lzip(*fmt_columns)
dtypes = self.frame.dtypes._values
Expand Down Expand Up @@ -824,7 +822,7 @@ def _get_formatted_index(self, frame):

fmt = self._get_formatter('__index__')

if isinstance(index, MultiIndex):
if isinstance(index, ABCMultiIndex):
fmt_index = index.format(sparsify=self.sparsify, adjoin=False,
names=show_index_names, formatter=fmt)
else:
Expand All @@ -850,7 +848,7 @@ def _get_formatted_index(self, frame):
def _get_column_name_list(self):
names = []
columns = self.frame.columns
if isinstance(columns, MultiIndex):
if isinstance(columns, ABCMultiIndex):
names.extend('' if name is None else name
for name in columns.names)
else:
Expand Down Expand Up @@ -937,7 +935,7 @@ def _format(x):
if self.na_rep is not None and is_scalar(x) and isna(x):
if x is None:
return 'None'
elif x is pd.NaT:
elif x is NaT:
return 'NaT'
return self.na_rep
elif isinstance(x, PandasObject):
Expand Down Expand Up @@ -1415,7 +1413,7 @@ def _cond(values):


def _has_names(index):
if isinstance(index, MultiIndex):
if isinstance(index, ABCMultiIndex):
return com._any_not_none(*index.names)
else:
return index.name is not None
Expand Down
14 changes: 8 additions & 6 deletions pandas/io/formats/html.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,14 @@

from textwrap import dedent

import pandas.core.common as com
from pandas.core.index import MultiIndex
from pandas import compat
from pandas.compat import (lzip, range, map, zip, u,
OrderedDict, unichr)

import pandas.core.common as com
from pandas.core.dtypes.generic import ABCMultiIndex
from pandas.core.config import get_option

from pandas.io.formats.printing import pprint_thing
from pandas.io.formats.format import (get_level_lengths,
buffer_put_lines)
Expand Down Expand Up @@ -117,7 +119,7 @@ def write_style(self):
('tbody tr th',
'vertical-align',
'top')]
if isinstance(self.columns, MultiIndex):
if isinstance(self.columns, ABCMultiIndex):
element_props.append(('thead tr th',
'text-align',
'left'))
Expand Down Expand Up @@ -205,7 +207,7 @@ def _column_header():
else:
row = []

if isinstance(self.columns, MultiIndex):
if isinstance(self.columns, ABCMultiIndex):
if self.fmt.has_column_names and self.fmt.index:
row.append(single_column_table(self.columns.names))
else:
Expand All @@ -224,7 +226,7 @@ def _column_header():

indent += self.indent_delta

if isinstance(self.columns, MultiIndex):
if isinstance(self.columns, ABCMultiIndex):
template = 'colspan="{span:d}" halign="left"'

if self.fmt.sparsify:
Expand Down Expand Up @@ -337,7 +339,7 @@ def _write_body(self, indent):

# write values
if self.fmt.index:
if isinstance(self.frame.index, MultiIndex):
if isinstance(self.frame.index, ABCMultiIndex):
self._write_hierarchical_rows(fmt_values, indent)
else:
self._write_regular_rows(fmt_values, indent)
Expand Down
Loading