inflearn logo
知識共有
inflearn logo

Python開発者のためのStreamlit実践 - Webアプリを2つ自分で作る

この講義は、Streamlitの基礎を身につけた開発者が、実際にデプロイできるレベルのWebアプリを作るための、全16回・約9時間30分の実務コースです。 Streamlitは、数行書くだけで画面を表示できるツールです。そのため入門は簡単ですが、いざ実務で使おうとすると、別の壁にぶつかります。ログインはどのように実装するのか、パスワードはどこにどのように保存するのか、ページが複数ある場合に変数をどのように共有するのか、フォームを送信するたびに画面全体が再実行される問題をどう防ぐのか。この講義では、そうした壁を一つずつ扱います。 前半では、データフレームとチャートの可視化、日付・ファイルアップロードウィジェット、Session Stateを復習しながら、ミニダッシュボードを作成します。続いて、最初のプロジェクトとしてNLP分析アプリの開発を始めます。Anacondaの仮想環境を構成し、spaCy・neattext・wordcloud・deep_translatorをインストールしたうえで、テキスト統計と品詞分析、ワードクラウドの可視化、多言語翻訳、韓国語の感情分析まで組み込み、一つのアプリを完成させます。st . columnsとst . expanderで画面を構成し、サイドバーにブランディングを追加するなど、完成度を高める作業もあわせて扱います。 後半は、サービスレベルの機能が中心です。SQLiteで会員データを管理し、平文保存の危険性を確認したうえで、SHA-256ハッシュ化によってパスワードを安全に処理します。テーマのカスタマイズ、マルチページ構成とURLスラッグ、ページ間での変数の受け渡し、txt・PDF・docxを問わず読み込めるスマートリーディング、st . formとコールバックによってリロードを制御する方法まで扱います。 最後の3回では、Pythonのクラスを深く学びます。内部の動作原理、カプセル化、継承と特殊メソッドを扱い、コードを構造的に組み立てるための基盤を作ります。 講義を終える頃には、Streamlitで作ったアプリを"練習用"ではなく、"実際に使えるもの"へと引き上げられるようになります。

1名 が受講中です。

難易度 中級以上

受講期間 無制限

Python
Python
streamlit
streamlit
NLP
NLP
data-visualization
data-visualization
SQLite
SQLite
Python
Python
streamlit
streamlit
NLP
NLP
data-visualization
data-visualization
SQLite
SQLite

受講後に得られること

  • データの表示とチャートの可視化 - st . dataframeとst . tableの違いを理解し、CSVベースの動的なチャートを実装します。

  • NLP分析アプリの制作 - テキスト統計、品詞分析、ワードクラウド、多言語翻訳、感情分析機能を実装します。

  • 認証とDB連携 - SQLiteで会員管理を実装し、SHA-256ハッシュ化によってパスワードを安全に保存します。

  • ドキュメントの読み取りとフォーム・コールバック処理 - txt・PDF・docxのスマートリーディング、st . formとコールバックでリロードを制御します。

  • 高度なウィジェットとSession State - 日付・時刻・ファイルアップロードウィジェットと状態管理でミニダッシュボードを作成します。

  • 高度なレイアウト設計 - st . columnsとst . expanderで情報を構造化し、サイドバーのブランディングを適用します。

  • マルチページとテーマ設定 - ページ構造、URLスラッグ、ページ間の変数共有、テーマのカスタマイズを扱います。

  • Pythonクラス応用編 - 内部の動作原理、カプセル化、継承、特殊メソッドまでオブジェクト指向構文を整理します

実務プロジェクトで学ぶStreamlitによる高度なWebアプリ開発:NLP、ダッシュボード、データベース、Pythonオブジェクト指向

PythonとStreamlitを活用して、実務で活かせるWebアプリケーション開発スキルを身につけましょう。データ可視化やインタラクティブなダッシュボードの制作から、自然言語処理(NLP)、テキスト分析、ワードクラウド、多言語翻訳、感情分析まで、さまざまな機能を実際に実装します。

さらに、SQLiteデータベースとの連携、会員登録およびログイン機能、SHA-256パスワードハッシュ化、マルチページ構成、テーマのカスタマイズ、ドキュメントの自動読み取り機能について学習します。最後に、Pythonクラスの動作原理、カプセル化、継承および特殊メソッドを習得し、より体系的で保守しやすいコードを作成できるようになります。

このコースは、データ分析、人工知能、自然言語処理、業務自動化、Webアプリケーション開発の分野で活用できる実践的なスキルを中心に構成されています。全16講義を通じて、基礎機能にとどまらず、実際の業務やポートフォリオに活用できるプロジェクトを完成させてみましょう。

学べること

本講義では、PythonとStreamlitを活用して、実務に応用できるウェブアプリケーションの開発方法を段階的に学習します。

  • データ表示と可視化: st.dataframeとst.tableの違いを理解し、CSVデータを活用した動的なチャートとデータ可視化機能を実装します。

  • 高度なウィジェットと状態管理:日付、時刻、ファイルアップロードウィジェットとSession Stateを活用し、ユーザー入力に反応するインタラクティブなダッシュボードを作成します。

  • 自然言語処理(NLP)アプリケーション:テキスト統計分析、品詞分析、ワードクラウド生成、多言語翻訳および感情分析機能を統合したNLPアプリを開発します。

  • 高度なレイアウト設計: st.columnsとst.expanderを活用して画面を体系的に構成し、サイドバーとブランディングを適用してユーザーフレンドリーなインターフェースを設計します。

  • データベースおよびユーザー認証:SQLiteを連携して会員登録およびユーザー情報を管理し、SHA-256ハッシュ化を活用したパスワードの保存方法を学びます。

  • マルチページおよびテーマ設定:複数のページで構成されたアプリケーションを作成し、URLスラッグの設定、ページ間での変数共有、テーマのカスタマイズを実装します。

  • ドキュメント処理およびフォーム制御:TXT、PDF、DOCXファイルを読み込んで処理する機能を開発し、st.formとコールバック関数を活用してアプリの再実行と状態の変化を制御します。

  • Pythonオブジェクト指向プログラミング:クラスの内部動作の原理から属性制御、カプセル化、継承、特殊メソッドまで学習し、保守しやすいコードを作成します。

本コースは全16講義で構成されており、データ分析、人工知能、自然言語処理、業務自動化およびWebアプリケーション開発に必要な実務能力の強化を目指します。受講者は各機能を自ら実装しながら、PythonとStreamlitを活用したプロジェクト開発能力を体系的に向上させることができます。

受講前に

前提知識および受講案内

1. 事前知識および準備事項

本講義は、PythonとStreamlitの基礎知識を持つ学習者を対象とした中級コースです。Pythonの基本文法、関数、リスト、辞書、ファイル入出力についての理解が必要です。また、st.writeや基本的なウィジェットなど、Streamlitの基本的な使用経験があると、より効果的に学習できます。

演習のために、PyCharmやVS Codeなどのコードエディター、およびAnacondaのインストールを推奨します。Web開発やHTML/CSSに関する別途の知識は必要ありません。

2. 講義の学習方法

講義は全16講義、約9時間30分の動画で構成されています。各講義を順番に視聴しながら、提供される実習用ソースコードと学習資料を活用して、実際にコードを書いて実行してみてください。

概念を理解するだけでなく、データ可視化、NLP分析アプリ、SQLiteデータベース連携、およびマルチページアプリケーションを実際に実装することが重要です。学習した機能を段階的に復習し、各プロジェクトを完成させることで、実務への応用力を高めることができます。

3. 質問および学習サポート

学習中に理解しにくい概念やコードの実行エラーが発生した場合は、講義の質問・ディスカッション機能を利用して、具体的な質問を投稿してください。エラーメッセージと問題が発生したコード、実行環境を併せて記載すると、問題の把握に役立ちます。

4. 講義資料およびアップデート

講義には実習用ソースコードと、DOCXおよびXMind形式の学習資料が提供されます。講義内容や実習環境に変更が生じた場合、必要に応じて講義資料やコンテンツを更新することがあります。ただし、更新の時期や範囲については別途保証されません。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Streamlit入門は終えたものの、実務アプリのレベルまで引き上げられていない開発者

  • 分析結果をWebで共有する必要があるデータアナリスト・研究員

  • フロントエンドなしでPythonだけを使って社内ツールを作らなければならない実務担当者

  • ログイン・DB連携のような、サービスに必要な機能を追加する方法を知りたい方

  • NLP分析結果を可視化するアプリを作ってみたい学習者

  • ポートフォリオに掲載するWebアプリの成果物が必要な就職活動中の学生

  • Python経験1~2年で、クラスなどのオブジェクト指向構文をもう一度整理したい開発者

前提知識、
必要でしょうか?

  • Pythonの基本文法を理解する(関数、リスト、辞書、ファイル入出力)

  • Streamlitの基礎的な使用経験(st . write、基本的なウィジェット程度で十分です)

  • PyCharmまたはVS Codeなどのコードエディター

  • Anacondaのインストール(NLPプロジェクトの仮想環境構築に使用します)

  • Web開発やHTML/CSSの知識は必要ありません

  • 実習用ソースコードと教材(docx、XMind)が提供されます

こんにちは
it learnerです。

IT分野ごとの実務専門家と専門講師が担当するIT教育課程で、プログラミング、ソフトウェア開発、データ分析、人工知能、ネットワークおよび情報技術など、さまざまな分野の実務中心の講義を提供します。最新のIT技術と業界動向を反映した教育コンテンツを通じて、学習者が理論的知識と実務能力を同時に身につけ、急速に変化するIT環境に適応できるよう支援します。

もっと見る

カリキュラム

全体

16件 ∙ (9時間 29分)

講座資料:

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

まだ十分な評価が集まっていない講座です。
ぜひ最初のレビューをお寄せください。

it learnerの他の講座

知識共有者の他の講座はこちら

似ている講座

同じ分野の他の講座を見てみましょう!

期間限定セール、あと4日日で終了

¥33,660

10%

¥4,670