Идентификация пола по именам

Есть база Excel. Один из столбцов список имен. Стоит задача сделать из списка имен еще один столбец, который добавляет пол напротив каждого имени. Чтобы далее презентовать статистику по полу клиентов. Пробую через библиотеку pymorphy2, но не работает. Изучение языка только начал, поэтому могу не понимать где-то логику кода. Помогите с вопросом, плз Предыдущая тема определения пола по фио не подходит к решению

name_list = df['Manager']

def pol(name_list):
    for name in name_list:
        parsed_word = morph.parse(name)[0]
        table_pol = parsed_word
    return table_pol

Ответы (2 шт):

Автор решения: MaxU

Добавить новый столбец к Pandas DataFrame очень просто - присваиваем столбцу с новым именем список значений такой же длины как и количество строк во фрейме:

In [156]: df = pd.DataFrame({"a":[1,2,3], "b":[4,5,6]})

In [157]: df
Out[157]:
   a  b
0  1  4
1  2  5
2  3  6

In [158]: df["new"] = [12,13,14]

In [159]: df
Out[159]:
   a  b  new
0  1  4   12
1  2  5   13
2  3  6   14

NOTE: вместо списка можно использовать одномерный вектор numpy.ndarray или Pandas Series.


PS для того, чтобы определить пол человека по имени, советую воспользоваться одним из ответов, данных на вопрос "Определение пола по ФИО".

→ Ссылка
Автор решения: JohnSUN

Python отложите в сторону для более сложных задач Используйте формулу

=ЕСЛИ(ПРОПИСН(ПРАВ(A2;1))="А";"жен.";"муж.")
=IF(UPPER(RIGHT(A2;1))="А";"жен.";"муж.")

Ошибки, безусловно, возможны, но при достаточно большой выборке результат не должен существенно повлиять на статистику.

Суть фокуса в том, что придумать женское отчество не заканчивающееся на "а" довольно сложно. В исходных данных они могут появиться в виде опечаток.

→ Ссылка