Как перевести месяцы в годы в таблице Pandas
Всем доброго дня.
Есть таблица типа:
| Пол | Возраст | Опыт(месяцев) |
|---|---|---|
| М | 44 | 73 |
| Ж | 42 | 230 |
| М | 45 | 237 |
| Ж | 27 | 69 |
Нужно значение столбца "Опыт(месяцев)" перевести в годы и месяцы.
Начал делать следующее:
exp = np.array([])
for i in list(df['Опыт(месяцев)']):
years = i // 12
if i % 12 != 0:
monts = i % 12
Как теперь значения years и monts поместить в ячейку столбца?
Или может нужен другой подход?
Ответы (1 шт):
Автор решения: strawdog
→ Ссылка
У вас в принципе неверный подход к работе с pandas - зачем делать циклы, если можно использовать векторизированные функции? Например:
df["Опыт (лет)"], df["Опыт(месяцев)"] = df["Опыт(месяцев)"].divmod(12)
теперь ваш df:
Пол Возраст Опыт(месяцев) Опыт (лет)
0 М 44 1 0
1 Ж 42 2 0
2 М 45 9 0
3 Ж 27 9 0