Ejemplo n.º 1
0
def _unconvert_index(data, kind):
    if kind == 'datetime64':
        index = DatetimeIndex(data)
    elif kind == 'datetime':
        index = np.array([datetime.fromtimestamp(v) for v in data],
                         dtype=object)
    elif kind == 'date':
        index = np.array([date.fromtimestamp(v) for v in data], dtype=object)
    elif kind in ('string', 'integer', 'float'):
        index = np.array(data)
    elif kind == 'object':
        index = np.array(data[0])
    else:  # pragma: no cover
        raise ValueError('unrecognized index type %s' % kind)
    return index
Ejemplo n.º 2
0
    def test_groupby_groups_datetimeindex(self):
        # #1430
        from pandas.tseries.api import DatetimeIndex
        periods = 1000
        ind = DatetimeIndex(start='2012/1/1', freq='5min', periods=periods)
        df = DataFrame({
            'high': np.arange(periods),
            'low': np.arange(periods)
        },
                       index=ind)
        grouped = df.groupby(lambda x: datetime(x.year, x.month, x.day))

        # it works!
        groups = grouped.groups
        tm.assertIsInstance(list(groups.keys())[0], datetime)

        # GH 11442
        index = pd.date_range('2015/01/01', periods=5, name='date')
        df = pd.DataFrame({
            'A': [5, 6, 7, 8, 9],
            'B': [1, 2, 3, 4, 5]
        },
                          index=index)
        result = df.groupby(level='date').groups
        dates = [
            '2015-01-05', '2015-01-04', '2015-01-03', '2015-01-02',
            '2015-01-01'
        ]
        expected = {
            pd.Timestamp(date): pd.DatetimeIndex([date], name='date')
            for date in dates
        }
        tm.assert_dict_equal(result, expected)

        grouped = df.groupby(level='date')
        for date in dates:
            result = grouped.get_group(date)
            data = [[df.loc[date, 'A'], df.loc[date, 'B']]]
            expected_index = pd.DatetimeIndex([date], name='date')
            expected = pd.DataFrame(data,
                                    columns=list('AB'),
                                    index=expected_index)
            tm.assert_frame_equal(result, expected)
Ejemplo n.º 3
0
 def f(values, freq=None, tz=None):
     return DatetimeIndex._simple_new(values, None, freq=freq, tz=tz)
Ejemplo n.º 4
0
 def f(values, freq=None, tz=None):
     return DatetimeIndex._simple_new(values, None, freq=freq,
                                      tz=tz)