Вы можете использовать pd.DataFrame.loc
для фильтрации внутри столбца:
name_set = {'John', 'Mary', 'Chris', 'Anna'}
res = df.loc[df['names'].isin(name_set)]
Вы можете использовать словарь для сопоставления ваших имен с числовыми идентификаторами:
d = {'John': 1, 'Mary': 2, 'Chris': 3, 'Anna': 4}
res['names'] = res['names'].map(d)
Второй шаг также может быть реализован с использованием Категориальные данные посредством извлечения кодов категорий.