определить пол по фио

Как определить пол по отчеству (ПРАВСИМВ)

Этот пример я решил разобрать, чтобы разобрать комбинацию из формул ЕСЛИ и ПРАВСИМВ.
Разберём тот случай, когда после применения не самой замудрённой формулы в Microsoft Excel, у обычного зрителя возникает ощущение «ВАУ».

Перед нами таблица с ФИО, и наша задача — определить с помощью формулы пол по отчеству.
По традиции можете посмотреть видео, пример для скачивания доступен выше.

Для начала немного теории…
Все мужские отчества заканчиваются на букву «-ч», женские — на «-на».
Нам остаётся просто воспользоваться логической функцией: если отчество заканчивается на букву «-ч», значит пол мужской.
В противном случае, пол — женский.

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

В ячейку C2 запишем формулу:

«=ЕСЛИ(ПРАВСИМВ(B2;1)=»ч»;»м»;»ж»)»

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

Растянем нашу формулу на всю таблицу, чтобы определить пол во всех ячейках.

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

Согласитесь, красивое решение.
Просто, одной формулой, которая состоит из функций ЕСЛИ и ПРАВСИМВ, мы так красиво решили задачу.

В этом смысле, в Excel есть креативная составляющая.
Если решать эту задачу в лоб, то такого элегантного решения мы бы не добились.
В то же время понаблюдав, что общего у отчества всех мужчин или женщин, мы нашли решение, по какому признаку программа могла бы тоже понимать это.

Вам так же доступно видео, возможно кому-то будет так удобнее.

Больше полезных видеоуроков на нашем YouTube канале.
Если у Вас возникли вопросы или просто хотите поделиться мнением, напишите в комментариях к записи.

Источник

Определение пола по ФИО – когда точность действительно важна

Некоторое время назад меня заинтересовала задача определения пола человека по его ФИО. В тот момент я работал в области медицинского страхования, где эта проблема была действительно актуальна – расходы на одного застрахованного, а значит и тарифы, по которым людей принимали на страхование, в зависимости от пола клиента, могли отличаться в несколько раз. Большая часть договоров – корпоративные, застрахованные являются сотрудниками работодателя.

Мы никогда не видели большинство из них в глаза, все, что мы имели – списки застрахованных, где пол иногда был указан (с большим количеством ошибок), но чаще – не указан вообще. Большинство компаний имеют свою специфику работы и профессиональные традиции, в силу чего, в их коллективах преобладают люди одного пола. Даже небольшая ошибка могла сделать потенциально прибыльный договор убыточным (или наоборот, но на такое, по странному стечению обстоятельств, случалось с нашими клиентами гораздо реже). В целом, при объеме портфеля договоров в несколько миллиардов, и характерном количестве ошибок около процента, цена корректного определения пола по ФИО была в районе нескольких десятков миллионов.

В рунете тема определения пола по ФИО поднималась уже неоднократно, но, в большинстве случаев, все сводилось к рекомендации внимательно смотреть на окончание отчества («вич»/«вна») или использовать какие-то подобные найденные вручную закономерности. К сожалению, в моей ситуации этот метод не подходил – среди застрахованных было много, действительно много, иностранцев. Правильное написание их отчества не содержало никаких признаков искомого окончания (а в некоторых случаях отсутствовало и само отчество).

Как ни странно, подобный, очень простой алгоритм, позволил добиться потрясающей точности – на выборке в несколько сотен тысяч человек (при базе для обучения в полтора миллиона) было допущено всего 6 ошибок (которые будут описаны ниже и каждую из которых, вполне вероятно, живой человек тоже совершил бы).

Некоторые подробности предварительной подготовки обучающей выборки:

Поскольку каждый раз, когда требуется определить пол человека, пробегаться по таблице контрагентов со всеми записями долго, то агрегированную информацию о частотах появления определенной части ФИО в хранимых данных я разместил во вспомогательной таблице. Выглядит это как четверка параметров – [часть ФИО – тип (Ф, И или О)– пол – число записей в базе]. Статистика обновляется еженедельно, автоматически.

Для определения того, какое соотношение мужчин и женщин для одной части ФИО считать достаточным основанием для причисления его к тому или иному полу, я использовал следующую функцию:

Ошибки алгоритма. Я обнаружил три ситуаций, когда алгоритм может выдать некорректный результат:

К сожалению, данный метод не является серебряной пулей, он просто лучше всех других, которые я встречал. Я тестировал метод на нескольких базах данных в разных компаниях. К минусам можно отнести то, что для части людей из-за недостаточной статистики определить пол по ФИО нельзя: на базе в 1,5 млн человек таких людей чуть больше 1%, на базе в 300 тыс человек таких около 3%, на базе в 6 млн человек не удалось определить пол для 0,8%. У меня есть предположение, что процент людей, для которых пол не может быть определен, обратно пропорционален корню из размера обучающей выборки, но никакого объяснения — почему именно так происходит, у меня нет. Конечно, процент людей, для которых пол может быть определен можно увеличить (и даже довести почти до 100%) установив более мягкие условия на то, когда человеку можно присвоить какой-либо пол, но для задач, с которыми я работал, была важнее точность, чем 100%-ное отнесение к одному из двух классов.

Другой недостаток, которому подвержен данный метод – плохая работа с опечатками. Несмотря на то, что некоторые из них довольно стандартны (имя «Олга» встречается чаще, чем, например, вполне правильное «Октябрина»), для большинства опечаток статистика будет отсутствовать => определить пол по такому имени будет не всегда возможно. К сожалению, обратное утверждение (если искомое имя еще ни разу не встречалось в базе, значит оно написано не правильно) не верно – людей с уникальными именами не меньше, чем опечаток в именах обычных людей.

Как и у любого инструмента, у этого есть особенности, о которых не задумываешься при создании.

Источник

Автоматическое определение пола по имени

Но мы не лингвисты, поэтому реализовать такой модуль было бы слишком сложно для нас, да и функция “не первой необходимости”. Но недавно, работая над склонениями текстов бесконечных актов, договоров и прочих юридических документов, мы вспомнили об используемом нами уже 2 года сервисе Морфер. Это прекрасный лингвистический сервис, специализирующийся на русском языке и позволяющий склонять по падежам слова, целые предложения, числительные, а также получать текст из цифр. В общем, потрясающая разработка всего одного человека — Сергея Слепова.

Итак, открываем спустя некоторое время его сайт и обнаруживаем — есть удобный и простой модуль для PHP, который позволяет определять род существительного. Т.е. подставляя сочетания ФИО можно получить достаточно точное определение пола (мужской, женский). Супер! Реализация функции не заставила себя долго ждать. Все сделано в виде шаблонов в тексте рассылки.

С помощью хитрой конструкции склонения:

В результате на выходе получится или “Уважаемый” или “Уважаемая”.

Вот еще пример конструкции:

=> в результате будет “Дорогой Иван” или “Дорогая Маргарита” или «Дорогой клиент» (если имя не задано)

Для тех, кто пользуется нашим онлайн-редактором, все еще проще:
определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

Удобные ссылки в панели управления по нажатию на кнопку человечка справа вверху, которые вы видите на скриншоте выше.

Написать подобную обертку действительно не сложно. Производительность модуля поражает и позволяет использовать такое определение пола и автоподстановку шаблона “на лету” в процесс отправки рассылки без потери скорости.

Поэтому, если у вас стоит задача “живой” работы с текстами, склонением различных слов и словосочетаний, работы с числительными — то библиотека Сергея вам в помощь! Огромное ему за нее спасибо!

Источник

Определение пола по ФИО

Подскажите, пожалуйста, алгоритм определения пола по ФИО. Может есть на питоне какие-то решения? Я пробовал: 1-по окончаниям; 2-с помощью pymorphy разбивал ФИО на слова и определял род каждого слова. Есть еще какие-нить библиотеки или может алгоритм? ФИО могут быть не только русские.

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

4 ответа 4

Сначала достанем базу данных на этом сайте

Также давайте закажем для генерации базу и для английских имён по аналогии.

Процесс не быстрый, так что можно пойти заварить чаёк и выкурить сигаретку. Как придём, нам придёт 2 письма со ссылками на скачивание наших БД.

Давайте протестируем что у нас получилось на нескольких входных данных:

Можно воспользоваться pymorphy2 для определения пола по имени:

Также для определения пола по фио можно использовать нейронную сеть. Пример можно взять здесь: https://github.com/Rai220/MlSexDetector

В дополнение к ответу user243273:

Для более широкой проверки я предлагаю:

Пример работы кода:

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

Всё ещё ищете ответ? Посмотрите другие вопросы с метками python python-3.x алгоритм nlp или задайте свой вопрос.

Связанные

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.9.24.40305

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Marina_MA’s блог

Нумерология: Как узнать пол будущего ребенка!

определить пол по фио. Смотреть фото определить пол по фио. Смотреть картинку определить пол по фио. Картинка про определить пол по фио. Фото определить пол по фио

Запись опубликована Fia Lo4ka · 4 апреля 2013

Нумерология: Как узнать пол будущего ребенка

(НЕ СЛЕДУЕТ ВОСПРИНИ МАТЬ СЛИШКОМ СЕРЬЕЗНО,

1 способ: По имени и фамилии родителей

Существует весьма распространенный способ определения пола будущего ребенка. Это нумерологическая система Пифагора. Воспользуйтесь приведенной таблицей для того, чтобы определить числовое значение любой буквы алфавита.

начертить табличку 5 строк и 9 столбцов, в них вписать:

в первую строку: 1 2 3 4 5 6 7 8 9

Напишите полное имя матери будущего ребенка, которое указано в вашем свидетельстве о рождении (т.е. девичье имя), а затем также напишите полное имя отца будущего ребенка. Далее запишите месяц зачатия вашего еще не рожденного, ребенка. Запишите числа и сосчитайте общую сумму. Затем разделите полученное число на семь. Если полученное число окажется четным, то родится девочка, а если число будет нечетным, то родится мальчик. Этот способ предсказания годится только для тех случаев, когда речь идет о рождении одного ребенка, (а не двойняшек) или однополых близнецов.

потом подсчитывем, например:

1+6+ 6+ 1+ 4+ 7+ 5+ 1+ 3+ 1+ 6+ 1=43

3+1+ 3+ 2+ 7+ 9+ 3+ 7+ 4+ 8+ 1+ 6=60

Таким образом, если Анна Ломакина и Виктор Волжин зачали ребенка в мае, то подсчет будет выглядеть таким образом:

Теперь делим: 111: 7 = 15 с остатком.

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

2 способ: Нумерологический метод расчета остатков основан на том, что все на свете подчиняется неким числовым закономерностям. Зная их, вполне можно предсказать события, которые произойдут в будущем.

Если разделить возраст матери на три, а возраст отца на четыре, а затем сравнить остатки, то можно вычислить пол планируемого ребенка.

Концепт метода в следующем: через определенные промежутки времени происходит генетически обусловленная перестройка организма. Обновляются слизистые оболочки и ткани, формируется кровь.

У женщин интервал равен трем годам, у мужчин – четырем.

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

Кстати, если остатки у родителей примерно равны, может родиться двойня. Вот почему даже если вы игнорируете данный метод, не поленитесь подсчитать остатки, и если они равны – не рискуйте. Не для каждой пары рождение двух деток вместо одного является приятным сюрпризом.

3 способ: если прибавить к вашему возрасту порядковый номер месяца зачатия и получится четное число, то значит родится мальчик…

4 способ: И еще способ давайте проверим

Считалка (у кого совпала отпишитесь) можно и на будущих детей прикинуть, а если у беременюшек совпадет тогда просто супер. Счилку разрабатывала в Москве одна тетенька она кандидат наук

просто число 3 + месяц зачатия + месяц рождения мамы + полных лет маме в момент зачатая, если четное то девочки, а нечетное то мальчик. У немя совпало по первому ребенку, хочу второго, но девочку вот и хотся процент посчитать по этой считалочке

5 способ: ФОРМУЛА.

В народе ходит несколько формул, помогающих спрогнозировать и определить пол будущего ребенка. Одна из формул выглядит так: 49 – X + 1 + Y + 3, где X – возраст отца, а Y – месяц зачатия. Если результатом решения будет четное число – ждите мальчика, нечетное – девочку.

Еще хочу добавить народные приметы и мои личные наблюдения)))

Некоторые народные приметы определения пола ребенка:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *