cat_type = CategoricalDtype(categories=['3', '2', '1'], ordered=True) cat_type2 = CategoricalDtype(categories=['Kind','Jong','Middelbaar','Oud'], ordered=True) df1['pclass'] = df1['pclass'].map({1: '1', 2: '2', 3: '3'}) df1['survived'] = df1['survived'].map({1: True, 0: False}) df1['sex'] = df1['sex'].map({'male': 'M', 'female': 'V'}) df1['pclass'] = df1['pclass'].astype(cat_type) df1['sex'] = df1['sex'].astype('category') df1['age'] = df1['age'].map(lambda x: round(x)) df1['age'] = df1['age'].astype('int8') df1['fare'] = df1['fare'].map(lambda x: round(x, 2)) df1['age_cat'] = pd.cut(df1['age'], bins=4, labels=('Kind','Jong','Middelbaar','Oud')) df1['age_cat'] = df1['age_cat'].astype(cat_type2) df1 = df1.filter(items=['pclass', 'name', 'survived', 'sex', 'age', 'age_cat', 'fare']) df1