.

Сделать репост в соц сети!

воскресенье, 30 октября 2016 г.

David Green. Существует ли HR аналитика

На семинарах часто задают вопрос: а есть ли компании, где HR аналитика в принципе существует? Речь идет о:
  • Не репортинге, системе отчетности или дашбордах, а о предиктивной аналитике;
  • И не просто об отдельных кейсах, которых уже достаточно накопилось, а о HR-аналитике как системе, как о практике аналитики.
Отвечаю: есть. Именно как система. Рекомендую статьи английского People Analytics leader, David Green.
Эти статьи не столько про решения, сколько про опыт компаний, про шишки, которые менеджмент набивает по ходу внедрения решений. Это будет интересно менеджерам, руководителям HR-аналитики, кто решится на такое внедрение у себя в компании "по взрослому".
Я уже давал ссылки на часть статей в своем цикле статей по hr-аналитике, теперь дам все вместе.
В статьях ниже представлен обзор практик HR аналитик компаний Google, Shell, Nielsen, ISS, Opower, Gap, Microsoft, ATB Financial, Cisco, BNY Mellon, LinkedIn, ABN AMRO, IBM, Coca-Cola Enterprises, Walmart, Salesforce,JetBlue, Virgin Media, Unilever, Nestlé. Впечатляет список, верно? Далеко не в каждой компании выстроены системы, но везде была какая-то движуха в сторону построения системы hr-аналитик.
И уже более конкретные примеры - интервью с командами hr-аналитиков. Нашим практикам эти интервью будут особо ценны.
Обратите внимание, что здесь далеко не только IT отрасль (я отвечаю на вопрос коллег, что HR-аналитика возможна только в компаниях типа Google, где сама компания работает на цифрах. Нет, оказывается не Google единым полна HR-аналитика).
Что в России? Если вы знаете компанию, которая выстраивает систему предиктивной hr-аналитики, напишите мне edvb@yandex.ru, я с удовольствием расскажу об опыте этой компании.

Понравился пост?

если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег. 

воскресенье, 23 октября 2016 г.

Можно ли определить интеллект работников по отзывам о компании

Ответ: можно.
Далее прошу троллей покинуть блог, а для остальных еще расскажу немного.
У меня нет никакой цели поерничать на тему отзывов, интеллекта и т.п. Чисто исследовательская цель.
Большая часть текста этого поста во многом вызвана реакцией на мой пост в Линке, где я написал, что определить интеллект по профилю в социальной сети достаточно тривиальная задача, несмотря на революционность идеи. Реакция была в 90 % случаев неадекватной, а мне бы хотелось, что вы понимали, что это обычная исследовательская задача, и у меня пока нет возможности определить интеллект по профилю в соц сетях, для этого просто требуется больше ресурсов для сбора данных, но я покажу как можно определять интеллект по отзывам о работодателе.
Пост, наверное, не очень практичный, ибо какая польза работодателю от того, что он по отзыву о компании определит интеллект работника. Хотя как вариант, мы могли бы создать процедуру оценки, основанную на отзыве о прошлом работодателе. Но здесь уже полет фантазии может унести нас далеко от сути поста. Но с другой стороны, если вы почитаете обсуждения про exit интервью в компании (это обсуждение в моей группе HR-аналитика на Линкедине, приглашаю вступить), то заметите, что единицы в принципе ставят вопрос о целях использования результатов exit интервью и отзывов о компании.
И да, для меня exit интервью и отзыв о компании это почти одно и тоже.
Этот пост - возможность поиграться с данными моего исследования факторов текучести персонала (я надеюсь, что вас заинтересуют результаты исследования, вы пройдете по ссылке и поучаствуете в исследовании).
Я увлекся анализом тестов и анализом тональности текста. Кстати говоря, 24 ноября мы с Людмилой Роговой (второй автор этого блога) проведем вебинар От резюме до exit-интервью. Текстовый след сотрудников - как его посчитать и извлечь выгоду, присоединяйтесь! Самый популярный материал из этой серии Какой функционал HR самый дорогой или кто в HR получает больше. Он более практичен и поэтому, видимо, популярен. Думаю, что со временем, джоб сайты будут использовать именно эту технологию / алгоритм для бенчмарков зарплат.

Постановка задачи

В исследовании факторов текучести персонала появился на так давно новый вопрос. Вопрос просьба оставить отзыв о компании: причины увольнения, плюсы и минусы компании, особенности корпоративной культуры и т.д... Вопрос открытый, респонденты пишут все, что хотят.
А кроме того, у нас есть договоренность с Лабораторией Гуманитарные Технологии о том, что все, прошедшие исследование респонденты могут бонусом пройти батарею психологических тестов, которая состоит из теста Большая пятерка (личностный опросник про интроверсию / экстраверсию, независимость / согласие, импульсивность / самоконтроль и т.д..) и КТО (тест способностей: вербальный, числовой интеллекты, эрудиция и т.п.). Оцените компанию! Это волшебный дар по настоящему.
Так вот, у меня есть возможность сметчивать результаты респондентов по опросу и результаты тестов. По сути, у нас к результатам исследования факторов текучести добавляется еще куча информации.
И мы, таким образом, можем выявлять связи между психологическими качествами респондента и любым другим показателем его из исследования. Уверен, что никто не будет возражать против того, что есть связь между определенными профессиями и психологическими качествами. Например, выдвигаю гипотезу, HR и IT почти наверняка различаются в интеллекте (уж простите, коллеги!), а может быть и по экстраверсии / интроверсии. Абсолютно точно можно сказать, что есть связь между полом и психологическими качествами. С этой точки зрения, отзыв о компании такая же переменная, как и профессия респондента, как и пол.
Разница только в том, что отзыв о компании представляет из себя текст, а текст это неструктурированная информация. Поэтому задача аналитика заключается в том, чтобы сначала предобработать текст, привести его к формату цифр, а потом уже проводить анализ.
Так что выявление связи между интеллектом работника и его отзывом о компании задача революционная только в том, что раньше этого никто не делал. И в принципе не слышал, чтобы проводились исследования выявления связи между текстами и психологическими качествами людей. Навскидку назову несколько интересных гипотез, которые я обязательно проверю в своем исследовании (пишу гипотезы!!!):
  • Более импульсивные люди ставят чаще восклицательные знаки в тексте, чем менее импульсивные;
  • Более импульсивные люди чаще используют ВЕРХНИЙ РЕГИСТР ТЕКСТА в сообщении, чем менее импульсивные;
  • Люди с более высоким вербальным интеллектом пишут грамотнее, чем с низким;
  • Экстраверты используют больше слов в отзывах, чем интроверты;
  • ..... могу писать долго, следите за блогом. И очень хотел бы, чтобы вы мне подсказали гипотезы, которые можно проверить.

Собственно в тему поста

Так вот сегодня первый пост из этой серии. Участвуют в исследовании не очень активно, отзывы оставляют не все респонденты, и тесты проходят не все респонденты, кто оставил отзыв, но кушать очень хочется уж больно невтерпеж, поэтому я показываю анализ на примере 51 респондента, у кого есть данные как по тесту, так и отзыв о компании. Поэтому на результат нужно смотреть всего лишь как на возможность, на перспективу. И может быть вас это подхлестнет поучаствовать в исследовании.
Я построил уравнение регрессии, где y - вербальный интеллект, а X - отзывы о компании.
Гипотеза проста: то, как мы думаем и пишем, определяет наш интеллект! Так и хочется вспомнить работу Льва Семеновича Выготского "Мышление и речь", которую изучал любой советский / российский психолог, получивший классическое образование в ВУЗе. И данный пост - мой вклад в российскую психологическую науку.
Поскольку респондентов было мало, я не проводил ни разбиения на трейн и тест сет, ни кросс валидации, а просто построил ридж регрессию.
И результат получился слишком красивым: R^2 = 0. 64
Это был бы фантастический результат, если бы мы получили его на достаточной выборке с соблюдением всех требований алгоритма машинного обучения.
НО! Если мы в итоге получим R^2 = 0. 064, то это будет крупным успехом.
Ну и просто для красоты две картинки
1) слова и словосочетания, которые связаны с низким вербальным интеллектом. Т.е. те респонденты, которые использовали эти слова или словосочетания, чаще показывали более низкий результат по вербальному интеллекту. (упаси вас бох не пользоваться этим теперь в текстах)))
Можно ли определить интеллект работников по отзывам о компании
2) слова и словосочетания, которые связаны с высоким вербальным интеллектом (ща как начнут все пользоваться этими словами, ага)
Можно ли определить интеллект работников по отзывам о компании

Понравился пост?

если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег. 

пятница, 21 октября 2016 г.

Статьи по hr-аналитике на английском 7

Очередной выпуск, уже седьмой, статей по HR-аналитике на английском.
Последний выпуск был аж 24 августа см. Статьи по hr-аналитике на английском 6, через нее вы сможете выйти на все выпуски.
За прошедшее время накопилось много статей, много материала, делюсь.


И на десерт расстановка ролей в команде HR аналитиков компании Нестле
Статьи по hr-аналитике на английском

Понравился пост?

если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег. 

четверг, 20 октября 2016 г.

Новые книги по анализу данных в Python и R от ДМК-Пресс

Новые книги по анализу данных в Python и R от ДМК-Пресс
И еще несколько книг от ДМК-Пресс.
Начинать лучше с Python и анализ данных. Книга базовая, это как про excel. Описывать все будет нереально в одном посте, скажу только ведущие российских курсов на курсере дают эту книгу в качестве базовой.
Построение систем машинного обучения на языке Python - по ссылке полный анонс. Эта книга самая лучшая книга по машинному обучению в Pyhon. Краткий набор задач:

  • Анализ тональности сообщений в twitter;
  • Тематическое моделирование по текстам Википедии;
  • Прогноз стоимости домов в Бостоне;
  • Создание рекомендательной системы;
  • Анализ корзины покупателей
  • и т.п..

Книга на Озоне>>
Скрапинг веб-сайтов - это самая долгожданная книга:)
Люда Рогова уже показала кратко возможности использования скрапинга сайтов:


Скачала отзывы работников / кандидатов банков с сайта банки.ру и провела математический анализ. Так что теперь я к книге буду обращаться часто и показывать возможности скрапинга и анализа "скрапленных" данных.
Анализ сетей (графов) в среде R - эта книга на языке R. По ссылке полный анонс. Я скажу здесь очень кратко: анализ графов (сетей) даст новый импульс развитию HR-аналитки.
Книга на Озоне>>

суббота, 15 октября 2016 г.

Построение систем машинного обучения на языке Python



Построение систем машинного обучения на языке PythonПродолжаю знакомить с книгами издательства ДМК Пресс. Сегодня представлю Построение систем машинного обучения на языке Python автора Луиса Педро Коэльо.
самую зачитанную мной книгу -
Эта книга не про обучение Python, а про решение бизнес-задач с помощью Python. Каждая глава - это объяснение работы какого-то алгоритма на реальном примере. Начинается с всем известного кейса про Ирисы, и дальше даются известные кейсы, которые можно чуть не один в один применять для решения своих задач.

  • Анализ тональности сообщений в twitter;
  • Тематическое моделирование по текстам Википедии;
  • Прогноз стоимости домов в Бостоне;
  • Создание рекомендательной системы;
  • Анализ корзины покупателей
  • и т.п..

И как в любой нормальной книге по машинному обучению, дается ссылка на аккаунт автора на github Luis Pedro Coelho. Там даются примеры кодов, там можно задать вопрос автору. Я уже задавал и получил ответ:)
Кстати, вот этот пост Какой функционал HR самый дорогой или кто в HR получает больше был написан частично с решениями из этой книги
В качестве резюме: книга содержит набор базовых кодов под решение наиболее распространенных бизнес-задач
Книга на сайте изд-ва ДМК-Пресс>>
Построение систем машинного обучения на языке Python на Озоне>>

Также рекомендую другие книги ДМК Пресс:
Книги по анализу данных от ДМК Пресс
R в действии. Анализ и визуализация данных на языке R - эту особенно для начинающих
Наглядная статистика. Используем R!
Сбор данных в Интернете на языке R
Анализ сетей (графов) в среде R


пятница, 14 октября 2016 г.

Про факторы эффективности команды (кейс)

По договоренности с одной компании публикую анонимно результаты исследования анализа факторов эффективности команд.
Данные абсолютно реальные, правда, там еще копать и копать. Поэтому я покажу только первый копок лопатой.
Логика простая: у нас есть несколько десятков филиалов (я в посте буду под командой понимать филиал, хотя в строгом смысле слова команда отличается от обособленного подразделения, но мне важно, что у филиала есть ясный финансовый результат, над достижение которого направлены усилия всех работников филиала), по которым известны:
  1. финансовая эффективность (мы их закодировали как 1 и 0 - эффективные /неэффективные);
  2. данные работников филиалов: пол, возраст, семейное положение, стаж, результаты тестов. 
Т.е. мы анализ свели фактически к выявлению влияния личных показателей работников на результаты команды. Мы не брали ни данные руководителя, ни совокупный командный эффект, ни макроэкономические показатели и т.п..
Эта задача по структуре идентична задаче Moneyball: задача Билли Бина сводилась к тому, чтобы вывести команду в финальную стадию игр (результат: 1 - вышел, 0 - не вышел), а уравнение регрессии содержало в себе только одни личные показатели игроков: % занятия баз и количество полных пробежек. Все. Правда, сейчас уравнения бейсбольной логи стали усложняться, некоторые результаты не попадают в рамки личных, результатов. Не могу нарыть статью у себя в блоге, я там цитировал статью, где выходили на понимание "командности" в объяснении результатов бейсбольной лиги.
Мы же пока не дошли до командности, только личные данные.
Итого, задача свелась к выяснению, есть ли различия в данных работников среди эффективных / неэффективных команд / филиалах.

Результат

Модель прогноза оказалась слабой.
Про факторы эффективности команды (кейс)
0, 5 означало бы отсутствие различий в эффективных / неэффективных командах, 1 - что мы можем идеально разделить команды на эффективные и неэффективные по личным данным. В нашем случае показатель равен 0, 55. Т.е. пациент скорее мертв, чем жив.
Но с другой стороны, я бы не рекомендовал в этих ситуациях плакать или разочаровываться: на результат работы филиала влияют куча факторов: от маркетинговой стратегии компании, узнаваемости бренда до месторасположения филиала. И например, продавцам продукции Apple не платят % с продаж - ибо а нафик, если весь объем продаж определяется известностью бренда и покупателю совершенно пофик, кто стоит за прилавком, его интересует какой то там по счету прибамбас от яблока.
Мы могли бы сильнее переживать в случае если бы строили модель индивидуального результата, как например здесь Кейс по прогнозу эффективности работников. Было бы странно, если личный результат не был бы связан с личными же данными.
И что такое 100 % различие филиалов на основе личных качеств? Это значит, что все 100 % эффективных филиалов отличаются от работников неэффективных филиалов. Это нереально хотя бы потом, что руководитель филиала связан ТК РФ, который не позволяет увольнять только на основе желания руководителя.
В нашем случае мы определили, что имеющиеся данные работников позволяют отличать  эффективные филиалы от неэффективных вот на столько.
И либо мы собрали мало информации, либо на большее мы и рассчитывать не можем.

Важность факторов. 

А вот это самое интересное.

Количество новичков. 

У нас были данные о стаже работников до прихода в компанию. Я поделил всех работников, у кого нулевой стаж -0- т.е. работник сразу пришел в компании, или у него был уже рабочий стаж - 1. И посмотрел как соотношение работников с белого листа влияет на эффективность.
Про факторы эффективности команды (кейс)
На этой картинке в строках - филиалы (1 - эффективные, 0 - неэффективные), в колонках новички (1 -имеет стаж до прихода в компанию, 0 - не имеет). И в ячейках - % по строкам, т.е. в эффективных филиалах 29 % - люди с чистой трудовой, а в неэффективных - 18!!
Хи квадрат дает p-value - 0.00770234632843655
Круто? Предвижу: найдутся сейчас офигенные гуру, которые скажут: ну это же очевидно, мол, лучше вырастить под себя, чем брать с устоявшимися привычками и т.п. Ну я тупой, мне это не очевидно.

Стаж работы в компании

Ок, мы можем смело брать людей после институтской скамьи. Но давайте посмотрим на стаж работы в самой компании.
Про факторы эффективности команды (кейс)
Запомнили уже, что 1 это эффективные филиалы? Для эффективных филиалов медиана стажа - 48 месяцев, для неэффективных - 72. 4 года и 5, 5 лет.
Крусскал Уолисс pvalue=0.011351051697263165. Ну может не самое крутое различие, но визуально приятное и, главное, наводит на определенные мысли про сменяемость поколений.....

Личностные качества

Единственная личностная характеристика, которая показала значимые различие в психологическом портрете, относится к коммуникативным характеристикам: уверенность в себе, умение устанавливать контакт, активность в установлении контактов.
Про факторы эффективности команды (кейс)
И интеллект не показал значимых различий в коллективах филиалов.

Обсуждение результатов

Я не буду проговаривать здесь те выводы, которые напрашиваются. Они очевидны. Вопрос в том, как это применять. И вот здесь я скажу методологическую вещь.
Я задачу поставил с ног на голову: по работнику определял, какой у нас филиал - эффективный или неэффективный. Задача как бе некорректная - это филиал / руководитель выбирает работника, а не работник выбирает филиал. Ну кроме случаев, когда кандидаты идут в намеренно успешные филиалы.
Так вот задачу я сформулировал, исходя из простой в общем мысли, что команду подбирает руководитель, что в основе различия личных качеств работников команд / филиалов лежит стратегия подбора команды: не бояться обновлять команду или опираться на старых пердунов.
Поэтому рекомендации компании по дальнейшим шагам:

  • смотрим различия по руководителям: как личностные качества, так и то, как эти руководители попали на руководителей - извне или изнутри филиала, какие показатели тестов, какой предыдущий опыт;
  • смотрим различия по набору команд. Самое первое действие: сравнить стаж руководителя и стаж команды. Если стаж команды меньше стажа руководителя, значит, он засранец набирает новеньких;
  • сметчить показатели руководителя и посмотреть как в связке данные работают - это будет про собственно психологическую совместимость;
  • Дать вес разным позициям в команде и посмотреть, как влияют на эффективность разных позиций влияет в связке с руководителем на эффективность, тогда выяснится, что дворников можно и не менять, а аккаунт манагеров надо гнать метлой того же дворника.
  • Добавьте свои варианты, что еще посмотреть....

Понравился пост?

Делал я эту работу бесплатно, если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег. 

Путь воина. Про блог Сергея Багузина

Искал информацию по скрапингу данных с помощью Питона (даже не спрашивайте, что это) и наткнулся на блог старого знакомого - Сергея Багузина Скрапинг веб-сайтов с помощью Python. Можно было бы поставить кавычки вокруг "старого" и/или "знакомого", но надеюсь, Сергей не обидится на "старого знакомого".
Мы познакомились в 2009 году, когда я пришел на сайт HRM. Сергей Багузин писал на форуме. Очень редко, но в темах типа обсуждения excel.
И этим он мне в первую очередь запомнился. Вызывает уважение готовность человека не просто тратить кучу своего личного времени на освоение excel, но и совершенно бесплатно делиться этим с публикой.
Правда, я сам считаю, что тот, кто делится, в итоге и получает больше - основной принцип Дао: "мудрец не копит, а расточает. И чем больше у других, тем больше у него". Если я правильно помню перевод трактата Лао цзы)
С этой точки зрения блог Сергея Багузина очень органичен.
После HRM мы потерялись из виду, и вот спустя какое-то время я вижу, что Сергей сам пришел к Python. И вроде бы логичный, но все-таки неожиданный результат. И книги те же, что на моей книжной полке:

Сергей погружается очень глубоко, читайте нпаример, пост Комплексное моделирование или бэггинг (bagging). Бэггинг - далеко не самый простой метод моделирования в машинном обучении, Сергей показывает, как это можно делать в excel. Я бы никогда не смог так глубоко показать, в лучшем случае сказал, бы какой код в Python это делает)
В качестве резюме я бы сказал так: сейчас очень много молодых людей, которые занимаются машинным обучением, статистикой и т.п.. Чаще всего эти люди получили пинок в ВУЗе, в тусовке и т.п. Сергей Багузин пришел к этому сам, через бизнес, через личное осмысление. Путь этот сложнее. Чаще всего идешь без огонька свечи ночью по лесу, обдирая кожу о сучья деревьев. Сергей проходит свой путь, он уникален и оригинален для нашего рынка.
Если вы наткнетеьс в поисковике по своему запросу на блог "Путь воина...." открывайте без сожаления, вы не потратите время зря, вы получите Знание.

ПыСы. 

Я попросил Сергея дать мне ссылку на пять любимых постов. Выкладываю. Надеюсь, вы составите через эти посты свое мнение о Сергее Багузине

  1. Левин. Статистика для менеджеров с использованием Microsoft Excel
  2. Дональд Уилер, Дэвид Чамберс. Статистическое управление процессами
  3. Нассим Николас Талеб. Антихрупкость. Как извлечь выгоду из хаоса
  4. Даниэль Канеман. Думай медленно... решай быстро
  5. Александр Остервальдер. Построение бизнес-моделей: Настольная книга стратега и новатора

Эрих Людендорф. Мои воспоминания о войне 1914-1918. Отзыв о книге

Прочитал наконец книгу Эриха Людендорфа Мои воспоминания о войне 1914-1918 гг.
Кратко, почему отзыв об этой книге в этом блоге: мне книги по военной стратегии
Эрих Людендорф. Мои воспоминания о войне 1914-1918. Отзыв о книге
дают гораздо больше с т.з. менеджмента, с т.з. понимания стратегии, чем книги по менеджменту.
И у меня уже богатый арсенал прочитанных книг по военной стратегии, см. Книги по военной стратегии.
Напомню, что английский военный историк Лиддел Гарт называл самым лучшим военачальником Первой Мировой войны именно Людендорфа. А Людендорф не был командиром, он был начальником штаба. В Германии вообще сначала искали начальника штаба, а уже к нему подыскивали командира.
Эрих Людендорф. Мои воспоминания о войне 1914-1918. Отзыв о книгеНа контрасте вспоминаются воспоминания Брусилова: в поезде он ехал вместе со строевыми офицерами, те ругали "штабных". Претензии простые: пороху не нюхали, теории много, вйны не знают. Брусилов защищал штабных, но соглашался с недостатками работы. В Германии такая история не была возможна. Генеральный штаб германской армии был местом обучения, местом генерации идей, см.  Генеральный штаб как учебный центр (или еще раз о культуре обучения). И Людендорф - один из лучших продуктов кухни германского генштаба.

Штабные навыки помогали Людендорфу лучше видеть картину боя. Если понимать под штабными навыки то, что сейчас в стратегии называют vision - уметь видеть дальше своего носа или поля боя. С началом Первой Мировой войны Людендорф не имел официальной должности, но он шел с первыми колонами в бой. По пути ему встречались паникеры, но он не обращал внимания на страсти. Он прорвался с небольшой группой немецких войск в бельгийский город Льеж. Немцы хотели сдаться: их было слишком мало, а подкреплений не было видно. Но Людендорф сам в одиночку пошел в крепость, предложил противнику сдаться. И сдался противник, а не немцы. И это говорит не только о смелости полководца, речь о видении ситуации.
Вместе с тем, если бы Людендорф родился сегодня, он был бы прекрасным менеджером. Большая часть его воспоминаний напомнили мне рассуждения бухгалтера. Он очень просто, обстоятельно обсуждает военные, хозяйские, политические вопросы. А хозяйственные вопросы тоже были: после того, как в 1915 году немцы захватили у России Польшу, Литву, западные Беларусь и Украину, то встали вопросы снабжения, экономики и т.п.
Из самых впечатляющих страниц - описание битвы Танненберга и последние месяцы войны.
Танненберг для нас - как повод вздохнуть и подумать: эх... вот если бы Реннекампф начал активнее наступать.... Ход войны был бы другой, возможно, Россия бы избежала революции и т.п.. Но увы..
Читайте, книга на Озоне>>

четверг, 13 октября 2016 г.

Как вычислять Крускал Уоллис тест в Python



Продолжаю публиковать стандартные функции в Python. См. предыдущий пост Как считать Хи квадрат в Python.
Крускал Уоллис тест позволяет определить значимость различий признака по нескольким группам. Например, уровень зарплаты (числовая переменная) по Москве, Санкт-Петербургу и Красноярску. Стаж (числовая переменная) по группам бухгалтеров, продажников и кассиров. Крускал Уоллис тест -тест непараметрический, это значит, что для различия поста русских, китайцев, эфиопов мы применим, скорее всего, дисперсионный анализ - параметрический аналог теста Крускал Уоллис. Рост у нас имеет нормальное распределение, что позволяет применить диспресионный анализ. А вот стаж, зарплата не имеют нормального рапределения, что требует непараметрический тест, в нашем случае Крускал Уоллис тест.
Загружаем необходимые пакеты
import pandas as pd
import numpy as np
import scipy
 
Делаем игрушечный набор данных
df = pd.DataFrame({'numbers':range(9), 'group':['a', 'b', 'c']*3})

Самое интересное в данном посте - переводим наши данные в требуемый формат.
groups = {}
for grp in df['group'].unique():
    groups[grp] = df['numbers'][df['group']==grp].values
print(groups)

Теперь вычисляем Крускал Уоллис тест
args = groups.values()
scipy.stats.kruskal(*args)

Или, если нужна группировка
args = [groups[grp] for grp in sorted(df['group'].unique())]

Все. В Python Крускал Уоллис тест вычисляется не так просто, как в R, но ... привыкаешь:)

Пост показался полезным?

Кликните на директ рекламу - вы сэкономите время с помощью кода, а  потрачу время не зря

вторник, 11 октября 2016 г.

Новые книги по анализу данных в R от ДМК Пресс



Издательство Дмк Пресс выпустило две книги по анализу данных. Если вы совсем новичок, рекомендую начать отсюда
Книги по анализу данных от ДМК Пресс
R в действии. Анализ и визуализация данных на языке R - эту особенно для начинающих
Наглядная статистика. Используем R!
И еще купите книгу Мастицкого. Она адаптирована под русского читателя.
Сегодняшние книги уже  продвинутый уровень.

Сбор данных в Интернете на языке R


  • Знакомство с R: скаляры, векторы, матрицы
  • Управление процессом вычислений
  • Обработка динамических веб-страниц
  • Обнаружение скрытых закономерностей в больших объ-емах данных
  • Классификация, прогнозирование, кластеризация данных
  • Разведка по открытым источникам данных

Всё, что регистрирует человек и созданные им машины, может считаться данными. Фиксируя новое и переводя архивы в цифровую форму, мы с каждым днём производим всё больше данных. Часть из них находится в специальных хранилищах, готовые к использованию. Но гораздо чаще случается так, что данные разбросаны по всемирной сети на многочисленных страницах онлайновых магазинов, заметках в социальных сетях, логах серверов и т. п. Прежде чем начать работать с такими данными, их необходимо собрать и сохранить в пригодном для анализа виде. Решению этих вопросов и посвящена данная книга.
Основной материал книги разделён на две части. В первой части дано краткое введение в R – описание среды разработки, языка и основных пакетов-расширений. Вторая часть посвящена непосредственно сбору данных: работе с открытыми данными, извлечению данных из веб-страниц и из соци¬альных сетей. Также рассмотрены необходимые тех-нические вопро¬сы: протокол HTTP, функции импорта данных различных форматов и регулярные выражения. Завершается рассказ созданием карт на основе собранных данных.
Издание предназначено специалистам по анализу данных, а также программистам, интересующихся сбором данных в Интернете.
Я от себя просто добавлю: овладение техниками из этой книги позволит снабжать себя данными, позволит самому себя обеспечивать задачами.
Заказать книгу на сайте издательства>>

Анализ сетей (графов) в среде R


  • Пять серьезных причин проводить анализ в R
  • Основные понятия сетевых данных
  • Создание объектов-сетей и работа с ними в R
  • Общераспространенные задачи при работе с сетевыми данными
  • Алгоритмы и методы визуализации
  • Эффективный графический дизайн сетей
  • Интерактивные графики сетей
  • Центральность как показатель важности для ненаправ-ленных сетей
  • Модели формирования и структуры сетей
  • Имитационные модели сетевой динамики

До недавнего времени для проведения анализа сетей тре-бовалось специализированное программное обеспечение. Однако недавно инструменты для анализа сетей появились в среде статистического программирования R. Помимо того, что благодаря этому методы анализа сетей стали доступны более широкому кругу специалистов по статистике, пакет R предоставил исследователям, занимающимся анализом сетей, обширные возможности по управлению данными, графической визуализации и статистическому моделированию.
Книга является руководством пользователя по анализу сетей в среде R. Она концентрируется на четырех основных задачах, с которыми обычно сталкивается специалист в области анализа сетей: управление сетевыми данными, визуализация сети, описание сети и моделирование сети. Все примеры сопровождаются программным кодом на языке R.
Издание служит отличным справочным ресурсом для изучения науки о сетях.
Издание выполнено в твердом переплете в цвете.
От себя добавлю: я в свое время прошел курс по анализу графов на курсере, но это было сто лет назад. Но совершенно точно могу вам сказать: если вы собираетесь развиваться в анализе данных в социальных науках, вам не избежать анализа графов. Это стопудово. Я сейчас дошел до того уровня, когда понимаю, что мы будем из этой техники извлекать основные решения.
Заказать книгу на сайте издательства>>

Сезонность в подборе HR специалистов


И кандидатам, и рекрутерам всегда было интересно знать, сезон на рынке или нет в подборе персонала. Сегодня я немного пролью свет на сезонность в подборе HR специалистов.
Почему только HR специалистов? Потому что в нашем опросе факторов текучести персонала участвуют относительно прилично только HR специалисты. Пройдите по указанной ссылке, поучаствуйте и будет вам шасте. Можно было бы взять вообще всех респондентов, но у меня есть подозрение, что сезонность в подборе разных специалистов будет разная. Сравните для примера количество IT специалистов: в конце поста я показываю диаграмму про них.
Итак, я взял дату приема HR специалистов (есть у нас такое поле в опроснике), вычленил месяц приема и получил такую картинку.
Сезонность в подборе HR специалистов

Январь меня сильно напряг, и я залез в данные. Оказалось, что многие наши коллеги недобросовестно относятся к заполнению этого поля, указывая дату трудоустройства начало января. При таком раскладе неинтересно считать сезонность, поэтому я просто убрал январь из данных. И вот вам первая задача: как бы вы январских поделили на тех, кто корректно указал дату приема, и тех, кто просто выбрал январь потому что, это поле обязательное для заполнения и год трудоустройства респонденты, скорее всего выбрали верный, а месяц... скорее всего нет. Для размышления даю вам картинку, как респонденты, которые указали январь, как месяц трудоустройства, указывали день трудоустройства
Сезонность в подборе HR специалистов

Можно кликом по картинке увеличить картинку, но смысл понятен итак: респонденты в подавляющем числе случаев указывали первую треть января как день трудоустройства.
Я пока не знаю, как такую задачу решать, поэтому просто удалил январских.
Получилось по божески
Сезонность в подборе HR специалистов
Картинка получилась занятная.
Осталось ответить на вопрос: есть ли в подборе HR такое явление, как сезонность?
Я отвечаю на этот вопрос так: явление сезонности в подборе HR специалистов выражено слабо.
Вам для подсказки, как я вычислял сезонность - Контрольная карта Шухарта в управлении hr бизнес процессами (на основе текучести персонала).
Для сравнения

Сезонность IT специалистов

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

Как считать Хи квадрат в Python

После того, как сгорает жесткий диск ноутбука, начинаешь думать о вечности - как сохранить свои коды. И тогда начинаешь ценить посты как этот Как в Python читать файлы формата excel.
В этом посте я сохраняю и показываю код, как считать Хи квадрат в Python. У меня уже есть пост Как считать Хи квадрат в excel. Так что я продолжаю традицию.
Для начала загружаем необходимые пакеты
import pandas as pd
import scipy
Создаем наш игрушечный набор данных
df = pd.DataFrame({'a' : ['b', 'b','a', 'a' , 'a', 'a', 'a', 'a' , 'a', 'a','a',
'a', 'b', 'b', 'b', 'b', 'b', 'a','a','a', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'a', 'a'],

 'b' : ['c','c', 'c','c', 'c', 'c','c', 'c', 'c','d' , 'd'  , 'd' , 'd' , 'd', 
'd',  'c', 'd', 'c', 'd', 'c', 'd', 'c', 'd', 'c', 'd', 'c', 'd', 'c', 'd']})
Наш файл содержит две колонки: a и b с признаками a,b,c,d.
Создаем сводную таблицу или таблицу сопряженности
pd.crosstab(df['a'], df['b'])
Получаем вот такое распределение
c d

a 10 5
b 6 8
Далее такой код
table = [ [ 10, 5 ], [ 6, 8 ] ]

chi2, prob, df, expected = scipy.stats.chi2_contingency(table)

output = "test Statistics: {}\ndegrees of freedom: {}\np-value: {}\n"

print(output.format( chi2, df, prob))

print(expected)
Думаю, этот код понятен: создаем объект table, создаем формулу подсчета показателей и ожидаемых значений.
и получаем такой вывод
test Statistics: 0.8367044413919416
degrees of freedom: 1
p-value: 0.3603410063766622

[[ 8.27586207  6.72413793]
 [ 7.72413793  6.27586207]]
Все. Хи квадрат в Python считается легко.

Пост показался полезным?

Кликните на директ рекламу - вы сэкономите время с помощью кода, а мое затраченное время будет не таким бессмысленным)))

воскресенье, 9 октября 2016 г.

Отзывы о компании: работающие vs уволившиеся сотрудники



В нашем исследовании факторов текучести персонала (и снова прошу поучаствовать) в августе этого года появился новый вопрос - "Отзыв о компании". Мы просим респондентов написать о сильных, слабых сторонах компании, причинах увольнения, особенностях корпоративной культуры и т.п..
Вопрос открытый, предполагается, что респонденты напишут свои мысли.
На сегодня получено 192 отзыва (а всего с августа месяца в исследовании приняло участие более 600  респондентов, т.е. отзыв о компании оставляет примерно каждый третий респондент).
В идеале стоило бы получить несколько тысяч отзывов о компании, чтобы сделать корректный и полный анализ текста, но долго ждать, а я надеюсь, что предварительный результат привлечен ваше внимание, вы поучаствуете в опросе, оставив отзыв о компании.
Обращаю ваше внимание, что отзыв о компании оставляют как уволившиеся / уволенные, так и работающие сотрудники.
Соотношение отзывов уволившихся / работающих сотрудников = 133 / 59.
Это мой первый пост по анализу отзывов сотрудников о компании, точнее даже, это только начало серии постов, у меня много разных задумок, как и в каких разрезах можно анализировать отзывы и обратную связь сотрудников.

Итак

Я решил посмотреть, можем ли мы по тексту отзыва понять, кто оставил отзыв о компании - работающий или уволившийся сотрудник. Задача может быть и не самая актуальная и совсем не практичная для компании, но Фейнман, отвечая на претензии, что физика не всегда решает полезные задачи, говорил, что сексом тоже не всегда ради пользы занимаются.
Буду анализировать отзывы о компании - найду рано или практический смысл.
Самый удивительный результат - предсказать по тексту, оставил отзыв о компании работающий или уволенный сотрудник - модель показала высокую точность прогноза. С более 90 % вероятностью мы можем сказать по тексту отзыва о компании, оставил отзыв работающий или уволившийся сотрудник.
Но этот результат определяется размером выборки: когда у нас будет несколько тысяч отзывов о компании, модель будет иметь другую точность.
И две картинки: на одной показаны слова, которые чаще используются работающими сотрудниками в отзывах о компании, и слова уволившихся сотрудников. Высота шрифта показывает вес слова, т.е. чем выше высота шрифта, которым указано слово на картинке, тем выше вероятность, что респондент, употребивший это слово, работает в компании (если показан вес слов отзывов работающих сотрудников), или вероятность, что он уже не работает в компании (если показан вес слов отзывов уволившихся сотрудников).
Я правильно понимаю, что у вас не возникнет проблем, какая картинка показывает вес и корзинку слов работающих и уволившихся сотрудников?
Отзывы о компании: работающие vs уволившиеся сотрудники

Отзывы о компании: работающие vs уволившиеся сотрудники


На картинку можно кликнуть, станет еще больше размером.
Не люблю объяснять там, где вы сами можете сделать выводы. Несколько комментов:
  • Слово "карьерный" выше, чем "зарплата";
  • Среди причин указываются "сокращение" и "переезд";
  • И есть даже название одной компании, не буду вслух произносить;
  • А ценным словом для работающих является слово "дурак", вот так и работаем с дураками, но работаем!
Коллеги, очевидно, что эти результаты сильно изменятся, когда мы наберем несколько тысяч отзывов о компании. Пока вот так, и все равно интересно
Участвуйте в исследовании!

Понравился пост?

если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег. 


Браузер как предиктор инновативности

Иногда тратишь кучу времени на то, чтобы сделать не очень приятные выводы.
История вопроса. Вот здесь Браузер скажет о кандидате то, что не скажет уровень учебной успеваемости интересные данные приводятся про использование браузера для прогноза поведения работника. Смысл в том, что кандидаты, которые входили на сервис он-лайн тестирования не через дефолтный браузер, показывали в дальнейшем более высокие результаты (в статье более подробно про это).
В нашем исследовании факторов текучести персонала (поучаствуйте, христом богом умоляю) есть вопрос "Какой основной браузер установлен на вашем личном ноутбуке / компьютере", и я уже делал заходы на исследование браузера. См. Браузер как метка кандидата - пользователи ЯндексБраузера работают в компаниях чуть дольше, чем пользователи других браузеров, например, ГуглХром.
Сегодня я решил порыть, чем пользователи ЯндексБраузера отличаются от пользователей других браузеров.

Результат получился таким

Пользователи Яндекс браузера, действительно, отличаются от пользователей других браузеров (ROC AUC 0.66), хотя, очевидно, что эта разница определяется переменными, включенными в наше исследование. Для выявления различий я взял такие переменные

  • Ваш пол,
  • Возраст,
  • В какой социальной сети вы проявляете максимальную активность,
  • Выходили (выходите) ли Вы со своими инициативами на руководителя,
  • Задерживались (задерживаетесь) ли вы на работе?
  • Знание иностранного языка на момент трудоустройства
  • Как часто Ваш руководитель давал (дает) Вам обратную связь
  • Критиковал (критикует) ли Вас руководитель в присутствии других?,
  • Масштаб населенного пункта,
  • Образование на момент трудоустройства,
  • Подключен ли у Вас в квартире интернет
  • Просим оценить интенсивность взаимодействия с коллегами.
  • Проходили (проходите) ли Вы за время работы в компании обучение самостоятельно (не за счет компании, а свой или бесплатно)
  • Проявлял (проявляет) ли Ваш руководитель заботу о Вашем развитии?
  • Размер компании (число работников),
  • Регион,
  • С какого уровня позиции вы ушли из компании
  • Сведения о компании. Отрасль
  • Сфера Вашей деятельности
  • Через какой источник нашли работу,
  • Являлась ли компания филиалом иностранной компании

Вам некоторые переменные могут показаться странными, но я в каждом случае думал, что могут быть какие-то основания.
В итоге вот такие факторы оказались важными
Браузер как предиктор инновативности
Я обрезал картинку, потому что дальше уже не было смысла смотреть.
Да и помимо возраста можно дальше и не смотреть.
Давайте посмотрим, как возраст делит пользователей Яндекс браузера и пользователей прочих браузеров.
Браузер как предиктор инновативности
Вот в этом месте я слегка офигел, поскольку считал, что Яндексбраузер скачивают более молодые пользователи, более инновативные, более склонные к тому, чтобы попробовать что-то новое.
Да, возраст я брал на момент заполнения анкет, чтобы не возникло подозрений.
Как вы видите, медиана Яндексобраузерников выше 35 лет, а прочихбраузеров пользователей - менее 35.....
Вот вам загадка.
Но зато мы ответили на другой вопрос. Мы теперь понимаем, почему пользователи Яндекс браузера показывают в исследовании чуть более длительный стаж.
Вопрос адресую вам: почему это так?
Вопрос уже много раз поднимался в моем исследовании, но вот снова натыкаемся на него.


Другие факторы 

показали совсем небольшие отличия
Например, среди работников уровня "специалист" (респонденты сами указывают уровень своей позиции) пользователей Яндекс браузера меньше, но различие небольшое. Диаграмма показывает нормированную по строкам таблицу (т.е. среди пользователей Яндекс браузера 18 % работников позиции "специалист", а среди остальных браузеров - 22 %.
Браузер как предиктор инновативности
В этом факте нет ничего удивительное, поскольку специалисты они по возрасту моложе начальников.

Обучение

А еще у нас был в исследовании вопрос про обучение (обучались ли вы....). И выясняется
Браузер как предиктор инновативности
Пользователи Яндекс браузера учатся меньше. Опять же: старшаки учатся меньше. А зря, конечно. Учиться надо в любом возрасте.
Вот такие забавные результаты мы получили, они для меня не очень приятные, поскольку версия об инновативности Яндекс браузера сильно пошатнулась. Но, к счастью, мы не исчерпали возможностей проверки этой гипотезы, под Новый год ждите продолжения приключений браузеров.

Понравился пост?

если Вы захотите выразить мне благодарность за интересный пост, вы можете перевести небольшую сумму мне на Яндекс кошелек (кликните по кнопке Перевести) 
или сделать перевод на карту Сбербанка,
Номер карты 676 280 38 921 538 46 57 
Или просто покликайте на директ рекламу ниже на странице - у вас это отнимет несколько секунд, а мне принесет немного денег.