'Group this column by the specified ``keys``
This effectively splits the column into groups which correspond to
unique values of the ``keys`` grouping object.  The output is a new
`Column` or `MaskedColumn` which contains a copy of this column but
sorted by row according to ``keys``.
The ``keys`` input to ``group_by`` must be a numpy array with the
same length as this column.
Parameters
keys : numpy array
Key grouping object
Returns
out : Column
New column with groups attribute set accordingly'

def group_by(self, keys):

    return groups.column_group_by(self, keys)
