In [2]:
import numpy as np
import pandas as pd
from pandas import DataFrame, Series

In [3]:
years = [1990, 1991, 1992, 2008, 2012, 2015, 1987, 1969, 2013, 2008, 1999 ]

In [4]:
decade_bins = [1960, 1970, 1980, 1990, 2000, 2010, 2020]

In [5]:
decade_cat = pd.cut(years, decade_bins)

In [7]:
decade_cat


Out[7]:
[(1980, 1990], (1990, 2000], (1990, 2000], (2000, 2010], (2010, 2020], ..., (1980, 1990], (1960, 1970], (2010, 2020], (2000, 2010], (1990, 2000]]
Length: 11
Categories (6, object): [(1960, 1970] < (1970, 1980] < (1980, 1990] < (1990, 2000] < (2000, 2010] < (2010, 2020]]

In [8]:
decade_cat.categories


Out[8]:
Index([u'(1960, 1970]', u'(1970, 1980]', u'(1980, 1990]', u'(1990, 2000]',
       u'(2000, 2010]', u'(2010, 2020]'],
      dtype='object')

In [9]:
pd.value_counts(decade_cat)


Out[9]:
(2010, 2020]    3
(1990, 2000]    3
(2000, 2010]    2
(1980, 1990]    2
(1960, 1970]    1
(1970, 1980]    0
dtype: int64

In [10]:
pd.cut(years, 2, precision=1)


Out[10]:
[(1969, 1992], (1969, 1992], (1969, 1992], (1992, 2015], (1992, 2015], ..., (1969, 1992], (1969, 1992], (1992, 2015], (1992, 2015], (1992, 2015]]
Length: 11
Categories (2, object): [(1969, 1992] < (1992, 2015]]

In [ ]: