Skip to content

Commit

Permalink
resolve merge_conflict pt1
Browse files Browse the repository at this point in the history
  • Loading branch information
thoo committed Oct 25, 2018
1 parent 43b2d22 commit 20440ec
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 20 deletions.
7 changes: 4 additions & 3 deletions pandas/tests/series/test_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@
import pandas.io.formats.printing as printing
import pandas.util.testing as tm
from pandas import (
Categorical, DataFrame, DatetimeIndex, Index, PeriodIndex, Series,
TimedeltaIndex, compat, date_range, period_range, timedelta_range
Categorical, DataFrame, DatetimeIndex, Index, Series, TimedeltaIndex,
compat, date_range, period_range, timedelta_range
)
from pandas.compat import isidentifier, lzip, range, string_types
from pandas.core.arrays import PeriodArray
from pandas.core.indexes.datetimes import Timestamp
from pandas.util.testing import assert_series_equal, ensure_clean

Expand Down Expand Up @@ -696,7 +697,7 @@ def test_dt_accessor_api_for_categorical(self):

test_data = [
("Datetime", get_ops(DatetimeIndex), s_dr, c_dr),
("Period", get_ops(PeriodIndex), s_pr, c_pr),
("Period", get_ops(PeriodArray), s_pr, c_pr),
("Timedelta", get_ops(TimedeltaIndex), s_tdr, c_tdr)]

assert isinstance(c_dr.dt, Properties)
Expand Down
57 changes: 40 additions & 17 deletions pandas/tests/series/test_constructors.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,30 @@
# coding=utf-8
# pylint: disable-msg=E1101,W0612

from collections import OrderedDict
import pytest

from datetime import datetime, timedelta
from collections import OrderedDict

from numpy import nan
import numpy as np
import numpy.ma as ma
import pytest
from numpy import nan

import pandas as pd
import pandas.util.testing as tm
from pandas import (
Categorical, DataFrame, Index, IntervalIndex, MultiIndex, NaT, Series,
Timestamp, date_range, isna, period_range, timedelta_range
)
from pandas._libs import lib
from pandas._libs.tslib import iNaT

from pandas.api.types import CategoricalDtype
from pandas.compat import PY36, long, lrange, range, zip
from pandas.core.dtypes.common import (
is_categorical_dtype, is_datetime64tz_dtype
)
is_categorical_dtype,
is_datetime64tz_dtype)
from pandas import (Index, Series, isna, date_range, Timestamp,
NaT, period_range, timedelta_range, MultiIndex,
IntervalIndex, Categorical, DataFrame)
from pandas.core.arrays import period_array
from pandas._libs import lib
from pandas._libs.tslib import iNaT

from pandas.compat import lrange, range, zip, long, PY36
from pandas.util.testing import assert_series_equal
import pandas.util.testing as tm


class TestSeriesConstructors():
Expand Down Expand Up @@ -854,17 +856,33 @@ def test_construction_consistency(self):
result = Series(s.values, dtype=s.dtype)
tm.assert_series_equal(result, s)

def test_constructor_infer_period(self):
data = [pd.Period('2000', 'D'), pd.Period('2001', 'D'), None]
result = pd.Series(data)
expected = pd.Series(period_array(data))
tm.assert_series_equal(result, expected)
assert result.dtype == 'Period[D]'

data = np.asarray(data, dtype=object)
tm.assert_series_equal(result, expected)
assert result.dtype == 'Period[D]'

def test_constructor_period_incompatible_frequency(self):
data = [pd.Period('2000', 'D'), pd.Period('2001', 'A')]
result = pd.Series(data)
assert result.dtype == object
assert result.tolist() == data

def test_constructor_periodindex(self):
# GH7932
# converting a PeriodIndex when put in a Series

pi = period_range('20130101', periods=5, freq='D')
s = Series(pi)
assert s.dtype == 'Period[D]'
expected = Series(pi.astype(object))
assert_series_equal(s, expected)

assert s.dtype == 'object'

def test_constructor_dict(self):
d = {'a': 0., 'b': 1., 'c': 2.}
result = Series(d, index=['b', 'c', 'd', 'a'])
Expand Down Expand Up @@ -1139,7 +1157,12 @@ def test_convert_non_ns(self):
def test_constructor_cant_cast_datetimelike(self, index):

# floats are not ok
msg = "Cannot cast {} to ".format(type(index).__name__)
msg = "Cannot cast {}.*? to ".format(
# strip Index to convert PeriodIndex -> Period
# We don't care whether the error message says
# PeriodIndex or PeriodArray
type(index).__name__.rstrip("Index")
)
with tm.assert_raises_regex(TypeError, msg):
Series(index, dtype=float)

Expand Down

0 comments on commit 20440ec

Please sign in to comment.