Время прочтения: 4 мин.
В больших, устоявшихся компаниях мы зачастую можем встретить коллег, которые работают в них не один десяток лет. Они — настоящие профессионалы своего дела, знающие все тонкости и детали, всегда готовы помочь и дать совет. Но с каждым годом объем данных стремительно увеличивается. Программы, к которым они привыкли, не справляются, и из раза в раз им приходится обращаться к коллегам за помощью в тривиальных задачах по обработке данных, только потому, что их инструмент не приспособлен к таким нагрузкам.
Для тех, кто начинает погружаться в освоение современных способов обработки данных и начал изучать python, я советую попробовать библиотеку Mito.
Mito — электронная таблица, которая генерирует Python-код. Вы можете вызвать её в своем Jupyter-ноутбуке и каждое изменение, внесенное в электронную таблицу, будет генерировать эквивалентный Python-код.
Чтобы установить Mito, выполните следующие код в ноутбуке:
!pip install mitosheet
Для импортирования библиотеки и запуска графического интерфейса выполняем команды:
import mitosheet
mitosheet.sheet()
Импорт данных
Для загрузки данных в формате csv или xlsx в интерфейсе предусмотрена кнопка ”Import”.
Mito сгенерирует:
# Imported 12321.csv
import pandas as pd
df_12321 = pd.read_csv(r'12321.csv')
Если вы хотите загрузить данные из DataFrame, то пропишите в скобках имя переменной, в которой он хранится:
import mitosheet
mitosheet.sheet(r'12321.csv')
Вы можете одновременно открыть несколько разных таблиц.
Обработка данных В Mito вы можете использовать: функции, фильтровать, сортировать, объединять наборы данных, изменять типы данных и многое другое. Например, переименовать столбец — в два клика.
Mito сгенерирует:
# Renamed columns c
df_12321.rename(columns={'color': 'c'}, inplace=True)
Анализ данных
Mito обладает достаточно большим функционалом. Например, вы можете посчитать сводную таблицу в Mito, нажав кнопку “Pivot” на панели инструментов, а затем выбрав строки, столбцы, значения и типы агрегирования.
Mito сгенерирует:
# Pivoted into df_12321
tmp_df = df_12321[['director_name', 'country']]
pivot_table = tmp_df.pivot_table(
index=['country'],
values=['director_name'],
aggfunc={'director_name': ['count']}
)
pivot_table.set_axis([flatten_column_header(col) for col in pivot_table.keys()], axis=1, inplace=True)
df_12321_pivot = pivot_table.reset_index()
Это гораздо более быстрый способ создания кода, чем постоянное переписывание.
Помимо самого сгенерированного кода команды Mito автоматически прокомментирует каждый из этих запросов.
Кроме работы со строками здесь можно работать и со столбцами: удалять, добавлять, переименовывать. Если вы по неосторожности сделали что-то не так: удалили данные или испортили их, просто нажмите «Undo» для отмены действия.
Визуализация
Одной из ключевых частей в анализе данных является построение промежуточных и итоговых графиков и прочих визуализаций. Mito позволяет создавать диаграммы и графики просто щелкая по интерфейсу, а затем копировать код графика и вставлять его туда, где надо его применить.
Чтобы создать диаграмму — нажмите кнопку “Graph”, выберете тип графика и оси.
Mito сгенерирует:
# Filter the dataframe so that it does not crash the browser
df_12321_filtered = df_12321.head(1000)
# Construct the graph and style it. Further customize your graph by editing this code.
# See Plotly Documentation for help: https://plotly.com/python/plotly-express/
fig = px.box(df_12321_filtered, x='content_rating', y='gross', points='outliers')
fig.update_layout(
title='content_rating, gross (first 1000 rows) box plot',
xaxis = dict(
showgrid=True,
rangeslider = dict(
visible=True,
thickness=0.05
)
),
yaxis = dict(
showgrid=True
),
legend = dict(
orientation='v'
),
paper_bgcolor='#FFFFFF'
)
fig.show(renderer="iframe")
Графики динамические, Mito подсветит вам экстремумы, квантили и выведет их значения во всплывающих окнах.
И это только малая часть того, на что способна библиотека Mito.
На рынке в сегменте библиотек для работы с данными в графическом интерфейсе есть три основных игрока: D-tale, Bamboolib и Mito. Они все достойны внимания, но самый нативный подход у Mito. Так же Mito обладает самым обширным функционалом. Мне Mito сильно помог разобраться с некоторыми функциями pandas’а в начале моего погружения в программирование, а сейчас он позволяет мне экономить очень много времени.
Mito отлично подходит любителям Excel, которые хотят перевести свои навыки на Python и ускорить обработку больших объемов данных. Так же он подойдет пользователям Python, которые хотят быстрее генерировать свой код, без необходимости искать его в Google или на Stack Overflow.
Всю документацию Mito можно найти по ссылке: https://docs.trymito.io