わずか数行のコードで最初のウェブアプリを作成

わずか数行のコードで最初のウェブアプリを作成

データ サイエンス プロジェクトの展開は、データ サイエンティストと機械学習エンジニアの両方に必要な重要なスキルです。機械学習モデルを展開する従来の方法は、Django や Flask などの確立されたフレームワークを使用することです。ただし、この方法は非常に時間がかかり、困難な場合が多くあります。もっと簡単な方法はありますか?

[[332557]]

株価ウェブアプリの概要

ここでは、Python ライブラリ streamlit と yfinance を使用して、株価と株式取引量を表示するシンプルな Web アプリを構築します。このアプリは理論的には yfinance ライブラリを使用して Yahoo Finance から過去の市場データを取得し、そのデータをデータ フレームに保存し、最後に streamlit の入力パラメータとして折れ線グラフを表示します。

必要なライブラリをインストールする

このチュートリアルでは、インストールする必要がある 2 つの Python ライブラリ、streamlit と yfinance を使用します。 Streamlit は、pip install コマンドを使用して簡単にインストールできます。

  1. pip インストール streamlit

同様に、次のコマンドを実行して yfinance のインストールを完了します。

  1. pip インストール yfinance

ウェブアプリコード

Web アプリを構築するためのコードの合計は 20 行未満で、コメントを除けば 14 行だけです。

  1. yfinance を yf としてインポートします
  2. streamlit を st としてインポートする
  3.   
  4. st.write("""
  5. # シンプルな株価アプリ
  6. Googleの株価終値と出来高を表示しています。
  7. """)
  8.   
  9. # https://towardsdatascience.com/how-to-get-stock-data-using-python-c0de1df17e75
  10. #ティッカーシンボルを定義する
  11. ティッカーシンボル= 'GOOGL'  
  12. #thisticker のデータを取得
  13. ティッカーデータ= yf.Ticker (ティッカーシンボル)
  14. #このティッカーの過去の価格を取得する
  15. tickerDf = tickerData .history(期間= '1d' 開始= '2010-5-31' 終了= '2020-5-31' )
  16. # 始値 高値 安値 終値 出来高 配当 株式分割
  17.   
  18. st.line_chart(tickerDf.Close)
  19. st.line_chart(ティッカーDf.ボリューム)

コードを1行ずつ説明する

それでは、上記のコードを詳しく見てみましょう。

  • 1 行目と 2 行目 - yf という名前の yfinance と st という名前の streamlit を入力します。
  • 4 行目から 7 行目 - st.write() 関数を使用して、テキスト コンテンツをマークダウン形式で出力します。
  • 9 行目から 16 行目 — yfinance ライブラリを使用して、Yahoo Finance から過去の市場データを取得します。
  • 行 11 - 株価シンボルを GOOGL として定義します。
  • 行 13 - yf.Ticker() 関数を使用して tickerData 変数を作成します。この変数には、名前が示すように、株式コード データが含まれます。 tickerDataは株式コードオブジェクトであることに注意してください。tickerDataをコマンドとして実行すると、次の出力が得られます: yfinance.Tickerオブジェクト
  • 行 15 — tickerDf データ フレームを作成し、日付範囲 (2010 年 5 月 31 日から 2020 年 5 月 31 日まで) と期間 (1 日) を定義します。
  • 18 行目から 19 行目 - st.line_chart() 関数を使用して線形チャートを描画します (終値データは、コードの 15 行目に定義されている tickerDf データ フレームの終値データと出来高データから取得されます)。

ウェブアプリの実行

コードを myapp.py というファイルに保存した後、コマンド プロンプト (または Microsoft Windows の場合は PowerShell) を起動し、次のコマンドを実行します。

  1. streamlit で myapp.py を実行する

すると、次の情報が表示されます。

  1. > streamlit run myapp.py これで、ブラウザでStreamlitアプリを表示できます。ローカルURL: http://localhost:8501
  2. ネットワーク URL: http://10.0.0.11:8501

すぐに Web ウィンドウがポップアップ表示されるので、以下に示すように、http://localhost:8501 にある作成された Web アプリに直接ジャンプします。

株価ウェブアプリのスクリーンショット

ビンゴ! Python を使用して最初の Web アプリを正常に作成できました。

カスタムウェブアプリ

上記は基本的な内容ですが、カスタム Web アプリをもっと面白くしたい場合はどうすればよいでしょうか?

  1. yfinance を yf としてインポートします
  2. streamlit を st としてインポートする
  3.   
  4. st.write("""
  5. # シンプルな株価アプリ
  6. Google の株価**終値**と***取引量***が表示されます。
  7. """)
  8.   
  9. #https://towardsdatascience.com/how-to-get-stock-data-using-python-c0de1df17e75
  10. #ティッカーシンボルを定義する
  11. ティッカーシンボル= 'GOOGL'  
  12. #thisticker のデータを取得
  13. ティッカーデータ= yf.Ticker (ティッカーシンボル)
  14. #このティッカーの過去の価格を取得する
  15. tickerDf = tickerData .history(期間= '1d' 開始= '2010-5-31' 終了= '2020-5-31' )
  16. # 始値 高値 安値 終値 出来高 配当 株式分割
  17.   
  18. st.write("""
  19. ## 終値
  20. """)
  21. st.line_chart(tickerDf.Close)
  22. st.write("""
  23. ## 音量
  24. """)
  25. st.line_chart(ティッカーDf.ボリューム)

少し時間を取って上記のコードを理解してみましょう。

  • 6 行目 - ここでは、「closing price」の前後に 2 つのアスタリスクを使用して、「closing price」という単語を太字にする必要があることに注意してください (以下を参照)。**closingprice**。また、「volume」は斜体で太字になっており、前後に 3 つのアスタリスクが付きます (例: ***volume***)。
  • 行 18 ~ 20 および 22 ~ 25 - 終値と出来高のチャートの上にマークダウン形式のタイトルを追加します。
  • 更新されたウェブアプリのスクリーンショット

成功しました。これで、Web アプリは自動的に更新されます。最初の Web アプリを構築するのはとても簡単です。ぜひ試してみてください。

<<:  200以上の機械学習ツールを見て学んだこと

>>:  AIとIoTが公共交通機関をよりスマートかつ安全に

ブログ    
ブログ    

推薦する

Baiduの新しい論文はGram-CTCを提案:単一システムの音声転写が最高レベルに到達

[[188128]]最近、百度シリコンバレーAI研究所の劉海栄氏、李翔剛氏らは、音声認識の速度と精度...

アリババはどうやって1分で会話型ロボットを作ったのでしょうか?

[[319957]] Alimeiの紹介:2020年に突然発生したCOVID-19パンデミックに直...

AI著作権問題プラットフォームが有料化、Googleは将来的にGoogle Cloud向けに開始予定の「免責保護」サービスを紹介

グーグルは10月16日、今月13日に自社の生成AI製品のユーザーが当局によって保護されると発表した。...

人工知能時代に対応するための知識と技術の蓄積を向上させる

記者がインタビューした専門家によると、人工知能などの知能化技術の応用が加速するにつれ、雇用への構造的...

Docker が Generative AI スタックと Docker AI をリリース

10月12日、DockerはロサンゼルスでDockercon 23カンファレンスを開催し、新しいDo...

人工知能チュートリアル(IV):確率論入門

このシリーズの前回の記事では、行列と線形代数についてさらに詳しく説明し、JupyterLab を使用...

私の国における AI チップ開発の現状と見通しはどうですか?

近年、人工知能(AI)技術の発展に伴い、多数のAIメーカーが登場しています。 AIにとって、データ、...

...

フロントエンド: JavaScript でのバイナリ ツリー アルゴリズムの実装

[[359197]]次に、js データ構造のツリーを調べてみましょう。ここでのツリーは、幹と枝を持つ...

...

Microsoft Bing Chat が Chrome と Safari で利用可能になりましたが、いくつかの制限があります

Microsoft の人工知能チャットボット Bing Chat が、Google Chrome お...

OpenAIのチップ製造計画が明らかに!独自のAIチップを開発する計画があり、買収対象を検討中

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

グラフアルゴリズムシリーズ: 無向グラフのデータ構造

[[393944]]この記事はWeChatの公開アカウント「Beta Learns JAVA」から転...

音声アシスタント業界はどこへ向かうのでしょうか?

プログレス・パートナーズの創設者兼シニアマネージングディレクターのニック・マクシェーン氏は、「今後数...

顔スキャンの時代、顔認識起業家の進むべき道

[[205201]] 9月26日、北京市内の中学校で、顔認証システムで本人確認がされた受験者が模擬試...