Вы можете использовать CatCodes прямо из панд.
- Сначала сделать столбец категорией
- Вызов
cat.codes
- Назначить егона ваш новый столбец
df['Category2'] = df['CategoryNumber'].astype('category').cat.codes
CategoryNumber Category2
0 1 0
1 2 1
2 3 2
3 1 0
4 3 2
Если вам нужно сделать это A, B, C и т. д., посмотрите на map
df['Letters'] = df['Category2'].map(dict(zip(df['Category2'].tolist(),string.ascii_uppercase)))
CategoryNumber Category2 Letters
0 1 0 D
1 2 1 B
2 3 2 E
3 1 0 D
4 3 2 E