groupby:
import random import numpy as np random.seed() df = pd.DataFrame({'data':['a', 'a', 'b', 'b', 'a'], 'num':['one', 'two', 'one', 'two', 'one'], 'data1':np.random.randn(5), 'data2':np.random.randn(5)})