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

Я французский 22-летний студент факультета журналистики с опытом работы в области компьютерных наук и веб-разработки. В нашей работе дата-журналистам, таким как я, часто приходится манипулировать данными, чтобы извлекать истории и создавать интерактивные диаграммы в Интернете. Для этого большинство из нас использует электронные таблицы или методы ограниченного массива в JavaScript, что делает распространенные методы манипулирования данными, такие как сводные таблицы или соединения, довольно болезненными (да, я говорю о вас, ВПР!).

Подождите... но почему бы вам просто не использовать Pandas?

Панды великолепны: они быстрые, мощные, универсальные, хорошо документированные и очень популярные в сообществе специалистов по данным. Но Pandas — это библиотека Python, а Python — это… скажем так, не мой любимый язык программирования. Кроме того, просто удобнее использовать один и тот же язык для обработки и визуализации данных.

Я люблю JavaScript и хотел иметь возможность работать с данными в JavaScript. Но не поймите меня неправильно: Kiwis НЕ является клоном Pandas. Несмотря на то, что их основные функции одинаковы и они используют одну и ту же терминологию («DataFrames» и «Series»), Kiwis был создан для программистов JavaScript, имитируя известные методы JavaScript, такие как toString(), forEach(), map(), filter() и т. д. Итак, если вы знакомы с Pandas или хорошо разбираетесь в JavaScript, Kiwi должен быть интуитивно понятным.

Кроме того, давайте будем честными: 95% методов Pandas вы не слышали и, вероятно, никогда не будете использовать. Kiwis, несмотря на то, что в будущем он будет расширяться, предлагает базовые и расширенные инструменты для работы с данными, которые вам нужны — ни больше, ни меньше.

Начиная

Как и его аналог Python, Kiwis использует «DataFrames» для хранения многомерных данных. DataFrame, как и электронная таблица, представляет собой таблицу, состоящую из именованных столбцов и индексированных строк. Kiwis позволяет вам выполнять различные манипуляции с DataFrame, такие как вставка, удаление и фильтрация строк и столбцов, вычисления сумма или среднее значение заданного столбца или создание сводной таблицы.

Вы можете создать DataFrame из массива объектов:

Если вы используете Node.js, вы также можете загрузить CSV-файл (или любые значения, разделенные разделителями) в DataFrame и сохранить DataFrame как файл JSON или CSV:

Доступ к строкам и столбцам и повторение DataFrame довольно просты:

Так же добавляются новые строки и столбцы:

Более подробную демонстрацию возможностей Kiwis можно найти в этой записной книжке Observable. Полная документация доступна на npm и на GitHub.

Обратите внимание, что Kiwis все еще находится в стадии бета-тестирования, поэтому, если вы обнаружите какую-либо ошибку или неожиданное поведение, сообщите мне об этом. Кроме того, приветствуются все предложения, чтобы сделать Киви еще лучше!

JavaScript на простом английском

Понравилась эта статья? Если да, то получите больше похожего контента, подписавшись на Decoded, наш канал на YouTube!