Pythonだけでデータ分析Webアプリを作れるStreamlitについて

TechBull運営/データアナリストのOka(@okmokm_ml)です。前回からコミュニティの参加振り返りブログを書いてから3ヶ月が経ちました。今回はデータアナリストの仕事をしている私から、Pythonで簡単にWebアプリを構築できるライブラリであるStreamlitを紹介したいと思います。

MENTA/TechBullのコミュニティに参加して振り返ってみた

Streamlitとは

StreamlitはPythonのライブラリで、フロントエンドの知識なしでデータ可視化のWebアプリを作成することができます。Pythonはデータ分析によく使われる言語のため、PythonだけでWebアプリの構築ができるようになっています。

Streamlitでできること

作成したいWebアプリのパーツに応じて、streamlit.hogehogeといった関数が用意されているので、欲しいパーツを組み合わせることで簡単にWebアプリを作ることができます。

以下のようにAPIの中で用意されているWebページの要素を組み合わせることで開発していきます。

  • ページ全体のレイアウトを作りたいとしたらLayouts and ContainersのAPIから必要な関数を取ってくる
  • ボタンを表示させたいとしたらInput widgetsから必要な関数を取ってくる
  • チャートを表示させたいとChart elementsから必要な関数を取ってくる

実装例

sample.pyに以下の内容を記載します。コード中にあるst.sidebar、st.ragio、st.line_chart、st.bar_chartがstreamlitを使用している部分です。

上記のファイル作成ができたら、以下を実行しましょう。

Streamlitサーバーが立ち上がり、ブラウザ上でWebアプリが表示されていると思います。

まとめ

Streamlitを使うと、たった1つのファイル、たったこれだけのコードでWebアプリの作成ができます。データアナリストとしては、フロントエンドの知識がなくてもあっという間にダッシュボードの構築ができるのが大きなメリットです。もちろんデプロイには別の知識が必要なので、それは違う技術スタックが必要ですが・・・Pythonはデータサイエンティスト、データアナリストによく使われる言語であり、ライブラリの開発が活発なので、今後もこういったツールがたくさん出てくると思います!

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール