DatabricksのBamboolibによるローコードのデータ探索分析

[Low\-Code Exploratory Data Analysis with Bamboolib in Databricks \- The Databricks Blog](https://www.databricks.com/blog/2022/08/14/low-code-exploratory-data-analysis-bamboolib-databricks.html)の翻訳です。

:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

Databricksノートブックにおける[Bamboolib](https://bamboolib.com/)のパブリックプレビューが本日スタートすることを発表できて大変嬉しく思っています！[AWS](https://docs.databricks.com/notebooks/bamboolib.html)と[Azure](https://docs.microsoft.com/en-us/azure/databricks/notebooks/bamboolib)においてはDatabricksランタイム(DBR)11.0以降、[GCP](https://docs.gcp.databricks.com/notebooks/bamboolib.html)においてはDBR11.1以降を使用し、ノートブックで以下のコードスニペットを用いるだけで簡単に利用することができます。

```py:Python
%pip install bamboolib

# new cell
import bamboolib as bam

# optional new cell
bam
```

# Bamboolibとは？

Bamboolibは、皆さんが知っていて大好きな標準的Pythonデータサイエンスライブラリである[pandas](https://pandas.pydata.org/)の機能に対してグラフィカルユーザーインタフェースを提供するローコードツールです。Bamboolibを用いることで、コード自身を記述することなしに簡単にコードファーストのデータサイエンスのすべてのパワーを手に入れることができます。これは、以下のことが可能になることを意味します:

- データベースのテーブルやCSVファイルに**アクセス**してデータを**ロード**し、
- 生データから調査に適したクリーンかつ整理されたデータに**加工**、**変換**し、
- 皆様のビジネスに多大なインパクトをもたらすキーとなる洞察を明らかにするためにデータを**探索**、**可視化**、**分析**することができます。

Bamboolibはローコード分析にガラスボックスアプローチを用いることでこれを実現しています: これらの分析オペレーションに対するpandasコードを生成し、UIを用いて実施したすべての分析結果を再現できるようにしています。そして、活用したいテクニックがネイティブでBamboolibで利用できない場合には、[Bamboolibのプラグインフレームワーク](https://github.com/tkrabel/bamboolib/tree/master/plugins)を用いることで容易に機能を拡張することができます。

:::note
**注意**
上述した通り、Bamboolibは内部でpandasライブラリを使用するローコードツールです。これは、使用する計算リソースのメモリー(Databricksのクラスタードライバーのメモリー)によって格納されるデータサイズが制限されることを意味します。より大きなデータにアクセスしたい、BamboolibでSparkをサポートしてほしいというご意見がございましたら、[是非フィードバックをいただければと思います](https://forms.gle/K4ikCWTzBb2wfuDc9)！
:::

# なぜBamboolibは素晴らしいのか？

Bamboolibはすべてのバックグラウンドを持つDatabricksユーザーに対して、コードファーストのデータサイエンスで利用できるすべてのディープな機能と柔軟性へのゲートウェイを提供します。実践者は以下のことをこなえるようになります。

- **生産性が向上します:** 通常の定型文を記述することなしにpandasデータフレームを準備、分析、可視化できるので、手元の作業にフォーカスできます。
- **すぐにpandasに慣れることができます:** Excel、MATLAB、SASのような他のツールをよく使っていた場合には、**何を**したいのかを知っていたとしても、pandasやPythonでそれを**どのように**行うのかがわからないかと思います。Bamboolibは、行いたいオペレーションの自然言語の記述をPythonコードに変換することを助けてくれます。
- **分析とコードの結果に自信を持てるようになります:** 作業の過程でBamboolibが生成するコードを容易に確認、評価、エクスポートできるので、行っているすべての作業が自分自身、あるいは分析結果を共有する同僚によって再現が可能です。

また、Bamboolibのメリットは、自分達の実践者のスキルセットを拡大し、彼らのインパクトを向上させたいと考えているデータ分析のリーダーや組織にも適用されます。

- **オンボーディングをシンプルにしセルフサービス分析を実現します:** シチズンデータサイエンティスト、ドメイン専門家、その他の従業員が、最小限の技術的オーバーヘッドでDatabricksノートブックでインパクトがあり再現可能な結果を達成することを可能にします。
- **学習とスキル開発の機会を提供します:** BamboolibはPythonのデータサイエンスの世界のシンプルなエントリーポイントとなります。ガラスボックスアプローチによって、ユーザーは分析を実現するコードにアクセスでき、このコードを用いることで彼らはpandasライブラリとモダンなデータサイエンスのコアな手法を学ぶことができます。

皆様も我々同様に、これが素晴らしいものと感じていただけたらと思います！

# デモ

<iframe width="560" height="315" src="https://www.youtube.com/embed/VC9LxBwaPFw" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

# レイクハウスはより多くのユーザーを歓迎します

Databricksにおいては、レイクハウスがデータ分析とデータ分析を支援するワークロードの理想的な場所だと信じており、可能な限り多くの人々がレイクハウスに来てほしいと考えています。Bamboolibは全く新しい方々への扉を開く機会を提供し、我々はこの機会を非常に素晴らしいものだと考えています。

8080 LabsがDatabricksファミリーに参画してくれたこととJupyterエコシステムをサポートするための多大なる投資によって、これらすべてが実現されました。BamboolibはipywidgetsフレームワークとIPythonカーネルを用いて開発されており、これが我々がDatabricksに初めて導入するJuypterエコシステムのパワフルなカスタムツールとなっています。今後、これらの機能をさらに導入する予定であり、ユーザーの皆様がこれらを気に入ってくれることを楽しみにしています。

### Databricks 無料トライアル

[Databricks 無料トライアル](https://databricks.com/jp/try-databricks)