статья

FineBI: Обработка данных для начинающих пользователей

Гайд для начинающих
Приветствую всех, на связи команда Business Intelligence GlowByte.
Да-да, те самые неугомонные, которые создали самое крупное русскоязычное сообщество FineBI, проводят обучения, собирают дайджесты и ежегодно организуют масштабные конференции.

Меня зовут Александр, я руководитель центра поддержки и обучения BI-решений в GlowByte, и сегодня хочу поделиться с вами небольшим гайдом по обработке данных в FineBI. Этот материал будет полезен начинающим BI-разработчикам.

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

Урок 1: Обработка и упрощение структуры данных

1.1. Обработка структуры данных

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

В FineBI для этого есть удобные инструменты, доступные в интерфейсе редактора данных, которые помогут достичь быстрого результата.
Функции обработки данных
Рассмотрим детальнее на примере функций "Split Rows and Columns" и "Convert Rows and Columns" и данных, которые содержат результаты экзаменов китайских студентов. Для этого запустим FineBI и создадим новый “Analysis Subject”.

Первоначальная структура данных:
Как можно видеть, это сырые данные, которые пока невозможно анализировать
Используя функции “Split Field” и “Row to column”, разделим колонку “Результаты экзамена” на колонки с оценками по соответствующим экзаменам.

Шаг 1: Разбиваем столбец “Результаты” по словам:
Результат 1 шага обработки
Шаг 2: Разбиваем получившийся после split столбец по 2 символа:
Результат 2 шага обработки
Данные после обработки:
Итоговый результат: после разделения данных на разные столбцы и ряды структура стала понятнее и проще
1.2 Удаление дублей

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

В первом случае абсолютно неважно, какую из строк мы сохраним, поскольку это никак не повлияет на анализ. К примеру, в ряду «А, А, А» мы можем оставить любую А. В этом случае для оптимизации процесса можно использовать функцию «Delete Duplicate Row» (удалить повторяющиеся строки).

Во втором случае необходимо оставить конкретную строку. Например, в ситуации, когда студенты пересдавали экзамен и на каждого студента будет два набора данных, а при анализе нам нужно будет оставить тот, где содержатся последние записи. В ситуации, когда из «А, В, С» нужно оставить именно А, мы должны применить функцию «Delete Duplicate Row» так, чтобы сохранить первую строку. Для этого сначала отсортируем данные функцией “Sort”, а затем удалим строки функцией «Delete Duplicate Row».
Выберите поле «убрать повтор», чтобы быстро удалить дубли
Для проверки дублей в данных вы также мы можете использовать функционал фильтрации в заголовках.
Выпадающее меню заголовка анализирует имеющиеся поля и быстро обнаруживает дубли
1.3. Работа со значением null

Одним из наиболее проблемных моментов при анализе данные является наличие в таблице значений null.

Когда у нас большие объемы данных и "null" встречается редко, это может не сильно повлиять на наши вычисления суммы или среднего значения. В таких случаях мы можем просто проигнорировать эти значения.

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

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

Нам стоит очень внимательно относиться к подобным ситуациям, чтобы при дальнейших расчетах выборочно выставлять фильтры. Для этого в FineBI можно использовать функцию “Formula Column” (добавить столбец с вычисляемым значением по формуле) или же более удобную: «Condition Tag Column» (добавить столбец со значением по условию).
Отмечаем студентов без оценок как пропустивших экзамен
Подпишитесь на дайджест
Раз в 2 недели отправляем рассылку с новостями из мира бизнес-аналитики.
Собираем полезные статьи, интересные мероприятия и новости.
Отправляя эту форму, я подтверждаю свое согласие с политикой конфиденциальности и соглашаюсь получать email рассылки от GlowByte.
Урок 2: Объединение и анализ множества таблиц

Аналитики часто сталкиваются с ситуацией, когда данные представлены в нескольких таблицах. Прежде чем начать анализ, возникает вопрос: как объединить эти таблицы? Для тех, кто только начинает изучать бизнес-аналитику, давайте рассмотрим два примера использования функции объединения: “Union All” и “Join”.

Давайте представим, что у нас есть несколько одинаковых таблиц, содержащих результаты экзаменов в разных учебных группах. Если мы хотим объединить эти таблицы с сохранением всех данных, мы используем операцию "Union All". Это как если бы мы просто склеивали эти две таблицы вертикально, добавляя строки из второй таблицы после строк первой таблицы.
В таблице стало больше строк, но количество колонок осталось прежним
Теперь давайте представим, что в одной из таблиц стало больше колонок, например добавилась колонка с общей оценкой успеваемости. Перед тем, как мы подробно рассмотрим функцию “Join”, изучим еще одну похожую функцию «Column from Other Tables» (добавить колонку из другой таблицы).

Вам наверняка уже знакомы “Vlookup” и “Sumif” из Excel. Как вы уже могли догадаться, эта функция позволяет агрегировать (Sumif) или искать соответствующие измерения из других таблиц и объединять их с текущей таблицей (Vlookup).
После того, как мы суммировали баллы по заданным параметрам, у нас появилось новая колонка
Любителям SQL функции left join и right join знакомы, пожалуй, очень даже хорошо, поэтому, используя функцию «объединить слева и справа» при редактировании данных в BI, можете смело руководствоваться логикой SQL.

Для тех, кто привык работать с SQL и знаком с операторами типа left join, right join и т. д., функция "Join" в редакторе данных FineBI может быть более интуитивно понятной. Эта функция ведет себя аналогично SQL-операторам и может быть легко освоена теми, кто уже знаком с базовыми принципами SQL.


Урок 3: Создание вычислений и аналитических показателей

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

Например, при анализе продаж часто приходится самостоятельно вычислять прибыль, темпы роста и прочие показатели. Поэтому перед проведением анализа мы можем вставить расчетные формулы непосредственно в таблицу с данными. В FineBI это можно сделать с помощью уже знакомой вам функции «Formula Column». Она работает так же, как формула в Excel, необходимо лишь ввести соответствующую формулу, чтобы создать нужное поле.
Интерфейс редактора формул
Затем с помощью функции «Summary Column» мы можем легко рассчитать сумму.
Выберите соответствующую группу и метод расчета, чтобы провести вычисления для указанных показателей.
Функция «Condition Tag Column» помогает решать самые проблемные для аналитиков вопросы, связанные с условием IF. Так, нам не нужно прописывать 7-8 уровней условия IF – от нас требуется лишь настроить некоторые условия вручную, чтобы присвоить данным разные значения.
Добавив условие, мы можем отфильтровать данные и присвоить им соответствующие значения
Урок 4: Верификация обработанных данных

Для начинающих BI-разработчиков основные сложности заключаются не только в понимании вычислительной логики большого количества функций BI-решения, но и в верификации обработанных данных. Наверняка у вас часто возникают подобные мысли: «Я сделал все как нужно, но правильно ли получилось?»

Для решения данной задачи FineBI предоставляет большое количество полезных функций.

4.1. Верификация по заголовку

Для быстрой проверки суммы и среднего значения достаточно выбрать необходимую колонку и обратить внимание на информацию в левом нижнем углу. Таким образом можно проверить полученные данные и определить их достоверность.
При проверке данных мы получили среднее значение равное 85.92, что соответствует нашим данным
4.2. Добавление и удаление шагов обработки данных

FineBI позволяет беспрепятственно добавлять или удалять некоторые шаги обработки данных. Благодаря этой возможности мы можем отфильтровать важные данные, а затем удалить некоторые шаги обработки, которые вызывают сомнения. Тем самым мы можем методом проб и ошибок посмотреть, как будут изменяться данные. Это похоже на то, как когда-то в школе мы много раз проверяли, верно ли решено уравнение.
Отфильтруем часть данных по заголовку, чтобы провести «выборочную проверку»
Воспользуемся подсказками в области действий, чтобы быстро проверить данные
Наш вводный урок по редактированию данных подошел к концу.
Датасет для тренировки можно скачать по ссылке.
Свои вопросы можете смело задавать в самом крупном сообществе FineBI в России.

По всем вопросам о продукте, ценах на лицензии, миграции пишите: bi@glowbyteconsulting.com


ПОКАЗАТЬ ЕЩЕ
Подпишитесь на дайджест
Раз в 2 недели отправляем рассылку с новостями из мира бизнес-аналитики.
Собираем полезные статьи, интересные мероприятия и новости.
Отправляя эту форму, я подтверждаю свое согласие с политикой конфиденциальности и соглашаюсь получать email рассылки от GlowByte.