Новый столбец таблицы
Не могу решить простую проблему. У меня есть большой сет данных (data), в нем более 40 столбцов и 25 тысяч строк. В каждой ячейке столбца 'group' находится одно из трех значений: 'Первый'; 'Последний' или 'Другой'. Необходимо создать новый столбец 'group_new', где каждому из этих трёх значений прямо бы соответствовали числа 1, 2 или 3. Пытался создать конструкцию типа if-elif-else, но ничего не добился (возможно синтаксис путаю). Помогите справиться... Вот что наваял.
if data['group'] == 'Первый':
data['group_new'] == 1
elif data['group'] == 'Последний':
data['group_new'] == 2
else:
data['group_new'] == 3
Ответы (1 шт):
Автор решения: splash58
→ Ссылка
Можно воспользоваться pandas.Series.replace
import pandas as pd
d = {'a': 77, 'b': 44 }
df = pd.DataFrame({'c1': [1,2,3], 'c2': ['a', 'b', 'a']})
df.c2 = df.c2.replace(d)
print(df)
даст в результате
c1 c2
0 1 77
1 2 44
2 3 77