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: Объединение и анализ множества таблиц
Аналитики часто сталкиваются с ситуацией, когда данные представлены в нескольких таблицах. Прежде чем начать анализ, возникает вопрос: как объединить эти таблицы? Для тех, кто только начинает изучать бизнес-аналитику, давайте рассмотрим два примера использования функции объединения: «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 в России: https://t.me/FineBIChat.
По всем вопросам о продукте, ценах на лицензии, миграции пишите: bi@glowbyteconsulting.com.