что нужно делать с данными в первую очередь
Вот данные попали вам в руки — что с ними делать, с чего начать и чем закончить? Вот примерная схема:
1. Очистка данных
Структурируйте и очистите данные. Рассмотрите и приведите в порядок все переменные.
2. Имейте чёткую цель
Для чего вам нужны данные и какую пользу/информацию вы хотите извлечь и как это применять?
3. Саммари и описательная статистика
Проведите общий описательный анализ данных, найдите средние, дисперсии, отклонения, чтобы лучше понять данные.
4. Разведочный анализ
Постройте графики, определите возможные тренды, найдите корреляции, кластеры.
5. Сделайте выводы, постройте прогнозы
Пришло время строить прогнозные модели и делать соответствующие выводы.
6. Подготовьте отчёт
Подготовьте понятный и точный отчёт о найденных закономерностях и извлечённых знаниях.
Many times those starting with data science don’t know what to do with data once they have a dataset at hand. Where to start, which analysis to do, what to consider in the analysis and which tool to use are common questions not only posed by beginners.
First of all it is important to have a tidy dataset where each variable has its own column (if we deal with tabular data) and where each column has the same data type and its own name (meaning something about the values that it holds). There are great articles and tutorials about data tidying that will be referenced at the end of the article, since this is not our primary focus. In summary the data has to be well formatted and following a certain logic.
Once we have a clean dataset it is important to know what the data is about. We can have a medical dataset, but does it contain data about diseases, patient records, or pharmaceutical data about medicines? It is important to know a good deal about the data we have at hand. The more we know about the variables, the better.
After knowing the most we can about the data, we need to have a goal in mind. «What do I want to pull out of this dataset?» is a good question to ask ourselves. If we have a clear goal in mind, great! To predict one of its variables, to find some correlation between two variables or just summarize the data to make a report are examples of goals one can have in mind. If we don’t have a clear goal, it is a good idea to start with descriptive statistics taking the mean, mode, median, standard deviation and frequency of the data. It is a good idea to plot the variables we find most interesting to see if we can identify any visible trend. Just play around with data! Doing so becomes easier to formulate our «goal» for the analysis.
Maybe this is enough and we have already found what we were looking for. If reporting numbers of summarized data is the case, then we have already done a descriptive data analysis! But we can take a step further to «exploratory analysis» trying to squeeze some more juice out of the dataset.
An exploratory data analysis builds upon and complements a descriptive analysis. In this type of analysis we look for discoveries, patterns, trends, correlations among the variables. It is a good idea to plot some variables of interest, run a correlation function on some variables or classify the data into clusters. It is interesting to note that at this point we get a little more «acquainted» with the dataset and we can start to have some new insights. In a nutshell, this is what exploratory data analysis consists of.
With our findings we can make inferences or predictions using the data. We do inferential data analysis when we quantify whether our findings will likely hold beyond the dataset in hand. This is a very common statistical analysis in the formal scientific literature. An example can be the discoveries made back then about smoking being related to lung cancer. All started with some findings showing that people who used to smoke a lot also had lung cancer. Then researchers made inferences about it kick-starting a deeper study.
A predictive data analysis uses a subset of variables (independent variables) to predict another variable (the dependent variable). The most common techniques used in predictive analytics are linear regression and logistic regression. Some examples of this type of analysis are when organizations try to predict the total amount of phone calls their call center will receive in a given day, or when banks try to predict if a person will default. A more detailed example can be found in the book «Moneyball: The Art of Winning an Unfair Game» by Michael Lewis, where the author shows how predictive analytics helped a baseball team to win more games using, among other things, linear regression. This idea was such a success that changed many coaches approach to the sport.
So, basically the steps we need to take in order to start a sound data analysis are: first, to have a tidy dataset; second, to have a goal in mind (formulate what we want to extract from the data); third, do some descriptive analysis; fourth, do some exploratory analysis plotting variables to find correlations and trends and fifth, make inferences or predictions with the discoveries.
Regarding the tools to use, if we want to prepare the dataset getting variables from multiple tables or databases, SQL is very handy since the vast majority of relational databases uses it. After the dataset is ready descriptive analysis can be done in a spreadsheet software like MS Excel using the analysis tab. To do more advanced analysis we will need a more powerful tool like R, Python, Mathlab, SAS or WEKA. I prefer to use R or SAS even for descriptive analysis and use spreadsheet only for reporting. SAS is a great tool (the best in my humble opinion) but is not free. It actually has a limited free edition called SAS University Edition that is worth checking out to learn about the tool. R in the other hand is free and has many packages that make data analysis a lot easier. For most cases I think that R can answer any analyst´s demands. Python is a great programming language that has its popularity growing very fast among data scientists. With Python one can do data analysis and also do traditional programming (like a web page for instance). Mathlab is another powerful tool very popular in Machine Learning and complex math calculus. It has a free version called Octave. It is also a good idea to check it out. WEKA is a free software for data analysis developed in Java by the University of Waikato. It is part of the Pentaho Business Intelligence suite.
Like these there are so many tools, but these are the most widely used in the field. For the novice I think SQL, R or Python are the ones to go for. After knowing a good deal about them, one can move on to SAS, Mathlab, WEKA and so on.
Что такое сбор данных и за какими событиями следить в первую очередь
Если вы клиентоориентированная компания, как мы в Carrot quest, то одна из главных ваших задач — понимание проблем клиентов, а также сбор инсайтов о том, как они пользуются продуктом и когда получают наибольшую ценность от него.
Поэтому один из важнейших этапов работы с продуктом: сервисом, сайтом или мобильным приложением — сбор данных о пользователях.
Анализ действий пользователей позволяет улучшить показатели по вовлечению в продукт, оттоку клиентов, конверсии, а также настроить коммуникацию и увеличить выручку.
Сегодня поговорим о том, что такое события, зачем их анализировать и какие данные можно собирать о пользователях внутри сервиса, сайта или приложения. А подробный гайд по подбору событий совсем скоро опубликуем во второй части этого материала.
Что такое событие
Вся аналитика по пользователям строится на событиях или эвентах (от англ. events). События — это действия или шаги, которые совершает пользователь внутри продукта. Событием может быть открытие приложения, регистрация, создание аккаунта, просмотр видео, добавление товара в корзину, загрузка фотографии и т.д.
Только вам решать, какие данные собирать для аналитики. Если данных будет слишком много, вам сложно будет их качественно анализировать и наоборот — аналитика одного или двух событий бесполезна: вы не сможете определить, как работает сервис, как в него вовлекаются пользователи и настроить правильную коммуникацию с ними.
Зачем анализировать события
Этот список можно продолжать бесконечно. Самое главное, вы не узнаете ни об одной из проблем без правильно настроенного сбора данных.
Собирать все необходимые данные по событиям — один из самых важных шагов на пути к пониманию, как ваши пользователи вовлекаются в продукт.
В чем отличие мобильной аналитики от сбора данных в вебе
Раньше компании отделяли аналитику в мобильных приложениях от сбора данных в вебе. Но такой подход уходит в прошлое. Большинство современных аналитических платформ трекают пользователей сразу в мобильном приложении и на десктопе. Теперь вы можете получать склеенные данные по пользователю из мобилки и веба. Это значит, вы будете знать, что один и тот же пользователь делал в приложении и на сайте.
Разница экранов у девайсов приводит к небольшим различиям в сборе данных. В мобильном приложении значительно меньше экран и пользователи совершают действия с помощью прикосновений, свайпов и удержаний элементов экрана. В результате в мобильном приложении как правило меньше опций в плане навигации.
На компьютере у пользователей значительно больше экраны и действия совершаются с помощью кликов, двойных кликов и использования клавиатуры. Аналитика в вебе обычно включает в себя больше взаимодействий, контента и ссылок на страницу.
Как устроен сбор данных
Аналитика внутри сайта или мобильного приложения отслеживает уникальных пользователей: что они делали, куда заходили, а также их географию.
О сборе данных. Как собирать данные, анализировать их и грабить корованы
В предыдущей статье мы рассматривали вопросы качества данных («О качестве данных и распространенных ошибках при их сборе» на Хабре).
Сегодня я хочу продолжить разговор о качестве данных и обсудить их сбор: как правильно расставить приоритеты при выборе источника, как и какие данные собирать, оценка ценности данных для компании и другое.
Собирайте всё
Вы решили улучшить оформление и оплату товара на сайте?
Отлично, а как проходит процесс формирования корзины покупателем? В какой момент он делает окончательный выбор товаров: до добавления в корзину или перед оплатой покупки?
На каждом сайте может быть по разному, но как ведет себя клиент у вас?
При обладании данными об оформлении заказа их можно проанализировать и определиться с вектором обновления, который будет удобен не только вам, но и пользователям.
Собирайте все данные, до которых дотягиваетесь. Вы никогда не будете знать со стопроцентной уверенностью, какие из них могут вам понадобится, а возможность сбора может выдаться только одна.
Чем больше данных вы соберете, тем больше информации о пользователях у вас будет, а что важнее — вы сможете понимать и прогнозировать контекст их поступков.
Контекст помогает лучше понимать своего клиента, его желания и намерения, а чем лучше вы знаете своего клиента, тем лучше вы сможете реализовать его персональные потребности, а значит повысить лояльность и повысить вероятность возврата клиента.
Сегодня сбор абсолютно всех данных уже не такая редкость, особенно это распространено в онлайн проектах. В компании, максимизирующей сбор данных и умеющей с ними работать, на их основе будет вестись практически вся деятельность: маркетинг, продажи, работа персонала, обновления и усовершенствования, поставки.
У каждого направления есть внутренние и внешние источники данных в различных форматах и разного качества.
Это хорошо для работы аналитиков и принятия решений, но отсюда также возникает проблема с хранением этого массива данных и их обработкой. Каждое действие увеличивает финансовую нагрузку и положительный эффект от обладания данными может вырасти в «головную боль».
Для принятия решения о целесообразности сбора и обработки тех или иных данных нужно понимание их основных характеристик. Давайте вкратце пройдемся по ним:
Объем
Показатель, влияющий на финансовые издержки по хранению и изменению данных и временные издержки по их обработке. И хотя с увеличением объема данных цена на хранение единицы снижается, но, учитывая увеличивающееся количество источников, финансовая нагрузка может стать нерациональной.
Разнообразие
Разнообразный набор источников данных дает более полную картину и помогает лучше оценить контекст действий пользователя, но обратная сторона медали — разнообразие форматов и расходы на их интеграцию в вашу систему аналитики. Не всегда все данные возможно собрать воедино, а если и возможно, то не всегда это необходимо.
Скорость
Какой объем данных требуется обрабатывать в единицу времени?
Вспомним недавние выборы президента США — благодаря быстрой обработке сообщений Twitter можно было понимать настроение избирателей в ходе дебатов и корректировать их ход.
Гигантам работы с данными, таким как Facebook и Google, на достижение сегодняшних результатов потребовать огромное количество времени, но благодаря этому у них теперь есть данные о каждом пользователе и они могут прогнозировать их действия.
Частая проблема персонала, работающего с данными — ограниченные ресурсы, в первую очередь финансовые и кадровые.
В большинстве компаний аналитикам приходится расставлять жесткие приоритеты в выборе источников данных, и тем самым отказываться от некоторых из них.
Кроме того необходимо учитывать интересы бизнеса, а значит оценивать рентабельность инвестиций в работу с данными и возможное влияние данных на компанию.
Приоритеты и выбор источников данных
При ограниченных ресурсах в работе с данными специалистам приходится расставлять приоритеты и делать выбор между источниками.
Чем же руководствоваться при этом и как определить ценность данных для компании?
Главная цель работы аналитиков — давать необходимую другим подразделениям информацию качественно и своевременно. Эта информация оказывает прямое влияние на эффективность компании и работу отделов.
У каждого отдела или подразделения есть свой «основной» тип данных.
Так для отдела по работе с клиентами важны контакты клиента и данные его социальных сетей, а для отдела маркетинга — история покупок и карта действий.
Так и выходит, что каждая команда имеет свой набор «очень важных данных» и эти данные определенно важнее и нужнее чем у других подразделений.
Вот только от важности и нужности данных проблема с ограниченными ресурсами не исчезает, а значит приходится расставлять приоритеты и действовать в соответствии с ними. Основной фактор для определения приоритетности данных — ROI, но не стоит забывать и про доступность, полноту и качество.
Вот список в котором приведены некоторые показатели, которые могут помочь в расстановке приоритетов:
Высокая
Причина: Данные нужны немедленно.
Объяснение: Если у какого-то подразделения появляется острая необходимость в данных с жестко ограниченными сроками, такие данные предоставляются в первую очередь.
Высокая
Причина: Данные повышают ценность.
Объяснение: Данные повышают прибыль или сокращают издержки, обеспечивая высокую ROI.
Высокая
Причина: Разным командам требуются одни и те же данные.
Объяснение: Удовлетворяя потребности нескольких команд в данных вы повышаете ROI.
Высокая
Причина: Краткосрочные или потоковые данные.
Объяснение: Некоторые интерфейсы и протоколы дают ограниченное по времени «окно» для сбора данных, следует поторопиться.
Средняя
Причина: Дополнение для существующего набора данных, которые повышают их качества.
Объяснение: Новые данные дополняют имеющиеся и улучшают понимание контекста действий.
Средняя
Причина: Код обработки данных может быть использован повторно.
Объяснение: Использование известного кода сокращает ROI и уменьшает количество возможных ошибок.
Средняя
Причина: Данные легко доступны.
Объяснение: Если данные ценны, а добыть их просто — вперед.
Средняя
Причина: Удобный API позволяет собрать данные за прошедшие периоды.
Объяснение: Если данные не требуются еще вчера, а вы всегда можете получить к ним доступ, то не стоит ставить им слишком высокий приоритет.
Низкая
Причина: Аналитики имеют доступ к данным или иные пути их получения.
Объяснение: Если у аналитиков уже имеется доступ к данным, то, возможно, есть более приоритетные задачи.
Низкая
Причина: Низкое качество данных.
Объяснение: Низкокачественные данные могут быть бесполезны, а иногда и вредны.
Низкая
Причина: Необходимо извлечение из веб-страниц.
Объяснение: Обработка таких данных может быть достаточно сложной и требовать чрезмерных усилий.
Низкая
Причина: Низкая вероятность использования данных.
Объяснение: Данные, которые хорошо бы иметь, но если их нет, то и ладно.
Зато, обладая этими данными, можно грабить корованы!
Как мы видим не всякие данные важно предоставить «прямо сейчас», а значит необходимо расставлять приоритеты и следовать в соответствии с ними.
Важно сохранять баланс между приобретением новых данных и их ценностью для компании.
Взаимосвязь данных
Вы получаете важные данные от отдела продаж, маркетинга, от логистов и обратную связь от клиентов, но самая большая ценность данных возникает после установления связей между разными видами данных.
Для примера рассмотрим Диану и ее заказ. Недавно она заказала комплект садовой мебели, сопоставив ее заказ с данными аналитики, мы видим, что она провела на сайте 30 минут и просмотрела 20 разных наборов. Это значит, что она выбирала мебель уже на сайте, не зная заранее, что будет заказывать.
Смотрим откуда она пришла — поисковая выдача.
Если бы у нас была информация о других покупках Дианы, то мы бы узнали, что она за последний месяц часто покупала товары для дома.
Частые онлайн покупки и использования поисковиков для нахождения интернет-магазинов говорит о низкой лояльности брендам, а значит склонить ее к повторной покупке будет сложно.
Так, получая каждый новый уровень информации, составляется индивидуальный портрет пользователя, по которому можно узнать о его жизни, привязанностях, привычках и прогнозировать его поведение.
Добавляем информацию из оформления заказа и понимаем, что это женщина, а по адресу доставки видим, что она живет в частном секторе.
Продолжая анализировать можно найти информацию о ее доме и участке, спрогнозировать ее потребности и сделать превентивное предложение.
При правильном анализе данных предложение может сработать и мы склоним клиента к повторной покупке, а так же повысим его лояльность за счет индивидуального подхода.
Предложение скидок за приглашение друга из соцсети даст нам доступ к ее списку друзей и информации аккаунта, тогда можно будет продолжать индивидуальный маркетинговый подход к клиенту и составить под нее таргетированную рекламу, но это вряд ли будет рентабельно.
Сбор и покупка данных
Сегодня существует множество способов сбора данных, один из самых распространенных — API. Но кроме того как собрать данные, их нужно обновлять, и тут все уже зависит от объема.
Небольшие объемы данных (до 100 тысяч строк) целесообразнее заменять свежими, а вот с крупными массивами уже актуально частичное обновление: добавление новых и удаление устаревших значений.
Массивы некоторых данных настолько огромны, что обрабатывать их все будет слишком дорого для компании, в таких случая проводят выборку, и на ее основании проводят аналитику. Часто практикуется «простая случайная выборка», но обычно данные, собранные с ее помощью, не репрезентативны и сравнимы с подбрасыванием монетки.
Важный вопрос: собирать сырые или агрегированные данные?
Некоторые поставщики данных дают уже скомпилированные подборки, но у них есть несколько недостатков. Например, в них могут отсутствовать необходимые или желаемые значения, которые повысили бы ценность аналитики на основе этих данных для компании, но у вас не будет возможности собирать или дополнять их. Данные, собранные сторонними агрегаторами, удобны для архивации и хранения, также они значительно экономят время и человеческий ресурс.
Но если есть возможность собирать сырые данные, то лучше выбрать их — они более полные, и вы сможете самостоятельно агрегировать их в соответствии со своими потребностями и запросами бизнеса, а после работать с ними так, как вам потребуется.
Многие компании самостоятельно собирают данные, а также использует доступные в открытых источниках. Но в некоторых случаях они вынуждены заплатить за получение необходимых данных третьей стороне. Иногда выбор мест приобретения данных может быть ограничен, в других случаях нет, но независимо от этого при выборе источника данных и принятии решения о их приобретении следует обратить внимание на несколько факторов:
Цена
Все любят бесплатные данные — и руководство и аналитики, но иногда высококачественная информация доступна только за деньги. В таком случае следует взвесить рациональность приобретения и сравнить стоимость и ценность данных.
Качество
Данные чисты, им можно доверять?
Эксклюзивность
Данные подготовлены индивидуально для вас или доступны всем желающим? Вы получите преимущество перед конкурентами, если будете использовать их?
Выборка
Есть возможность получить выборку для оценки качества данных до приобретения?
Обновления
Какой срок жизни данных, как быстро они устаревают, будут ли они обновляться и как часто?
Надежность
Какие ограничения у интерфейсов получения данных, какие еще ограничения могут накладываться на вас?
Безопасность
Если данные важны, то будут ли они зашифрованы и насколько надежными протоколами? Также не стоит забывать о безопасности при их передаче.
Условия использования
Лицензирование или иные ограничения. Что может не позволить вам воспользоваться данными в полном объеме?
Формат
Насколько вам удобно работать с форматом приобретаемых данных? Есть ли возможность их интеграции в вашу систему?
Документация
Если вам предоставляют документацию — хорошо, а если нет, то стоит поинтересоваться способом сбора данных для оценки их ценности и надежности.
Объем
Если данных много, вы сможете обеспечить их хранение и обработку? Ценные данные не всегда будут объемные, как и наоборот.
Степень детализации
Эти данные подходят для уровня необходимой вам аналитики?
Это далеко не все, но основные и несомненно важные вопросы, которыми стоит задаться перед приобретением данных у поставщиков.
На этом я закончу статью по сбору данных.
Если информация была для вас полезна, то я буду рад обратной связи.
Возможно, вы с чем-то не согласны или хотите поделиться своими методами и наработками — приглашаю в комментарии, и надеюсь на увлекательное и полезное обсуждение.
Всем спасибо за внимание и хорошего дня!
Большие данные. Этапы работы с большими данными.
Хочу порассуждать на тему «Больших данных», их применении в проектах и использовании в повседневной жизни, работе и учебе.
Для начала разложим по полочкам само определение «Большие данные», их еще называют «Big data», «Биг дэйта» или «Хьюдж дэйта». Из чего они состоят и откуда берутся? Я буду пользоваться русским вариантом этого термина для простоты.
Определение
«Большие данные» — это некий набор данных, который обрабатывается при помощи специальных программ. Программы позволяют получить на выходе информацию, которую способен понять и обработать человеческий мозг. Это определение не официальное, я его сформулировал сам, поэтому, может быть где-то есть более точное определение, буду рад, если укажешь источники.
В какой момент простые данные становятся большими?
Однозначного ответа на этот вопрос нет, поэтому будем считать, что большими данные становятся тогда, когда их нельзя обработать стандартными офисными программами типа Excel. Но это, конечно, условности. Когда-то для вычисления расчетов в институтах приходилось записываться в очередь, а саму программу расчета приходилось писать сначала на бумаге. И казалось, что это какое-то чудо чудесное. Сейчас такие расчеты можно сделать у себя дома и никуда не записываться.
Думаю, так же случится и с «Большими данными», вернее, уже постепенно случается, благодаря развитию компьютеров и облачных технологий. И понятие «Большие данные» уйдет в архив, а ему на смену придет что-то новое и интересное, вроде «Квантовые данные», которое весело и радостно подхватят СМИ, и все будут им пользоваться. И «Большие данные» вновь станут просто данными.
Тогда что имеют в виду, когда говорят «Мы проанализировали при помощи «Больших данных»?
Это значит, что при принятии решений для конкретного случая были приняты во внимание данные от аналитика, который провел анализ при помощи специальной или специальных программ над конкретным массивом данных. В этом одном простом на первый взгляд предложении может быть заключена работа нескольких десятков, а то и сотен людей. А может быть и одного, все завысит от размера компании.
Основные этапы работы с большими данными
Работу с «Большими данными» можно разбить на пять основных этапов. Это не уникальное разделение, а скорее нормальный, взвешенный подход к работе с данными в принципе.
Подготовка к сбору данных
На этом этапе любая компания организует инфраструктуру и сервисы для того, чтобы создать платформу, на которой будет строиться вся остальная работа с «Большими данными». Надо установить и настроить серверы. Купить или написать программы, которые будут давать возможность правильно записывать, хранить и использовать данные. Обучить персонал или отдать на обучение, чтобы в дальнейшем поддерживать работоспособность всей этой инфраструктуры.
Сбор, преобразование и хранение
Данные в компанию могут поступать из разных источников, как внутренних, так и внешних. Их все необходимо преобразовать в нужный и определенный на первом этапе вид, а затем направить на хранение для последующего анализа. Если все было сделано правильно на первом этапе, то здесь не должно возникнуть трудностей. Если у вас быстро растущая компания, то могут и появиться, конечно. Например, у вас в компании на старте не было оффлайн магазинов, и данные о продажах поступали только от интернет-сайта, а через какое-то время у вас появилась сеть магазинов, данные о продажах в которых необходимо также получать и хранить для последующего анализа.
Анализ данных
Как следует из названия самого этапа, здесь и происходит основной анализ данных: выдвижение гипотез, построение моделей, тестирование уже построенных моделей и много другой интересной работы. Тут хочется написать, что это и есть основной этап, ради которого и затевается работа с «Большими данными», но нет. Работа с большими данными в компании строится не ради самого анализа, а ради того, чтобы при принятии решений можно было опираться на еще один источник данных.
Принятие решений и выполнение необходимых работ по результатам принятых решений
Вот именно ради этого этапа и затевается вся эта движуха с «Большими данными». По результатам принятых решений на основе «Больших данных» инициируются проекты и приступают к их реализации. Это может занимать от нескольких часов, дней, до нескольких лет. Все, как обычно, зависит от отрасли и размеров компании.
Обратная связь
И последний, но не менее важный этап при работе с большими данными – это обратная связь. На этом этапе анализируются результаты выполненных проектов на основе больших данных. Сравнивается «план/факт» и делаются соответствующие выводы о предложенных гипотезах, их реализации и работе. На этом этапе аналитик больших данных получает много полезных инсайтов, которые в дальнейшем можно использовать в работе и выходить на новый цикл работы с большими данными.
В заключении
Сами по себе «Большие данные» ничего не значат. Результат работы с «большими данными» – это не модели и расчеты, а решения, которые могут быть приняты благодаря расчетам и моделям. В работе с «большими данными» очень важна обратная связь от внешнего мира и постоянная корректировка расчетов и моделей с поправкой на эту обратную связь.