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

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

データ サイエンス プロジェクトの展開は、データ サイエンティストと機械学習エンジニアの両方に必要な重要なスキルです。機械学習モデルを展開する従来の方法は、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が公共交通機関をよりスマートかつ安全に

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

...

CVPR2019で、Baidu Apolloはレベル4自動運転向けの純粋なビジョンソリューションであるApollo Liteを発表しました。

米国現地時間6月16日から20日まで、コンピュータビジョンとパターン認識の分野における世界有数の学術...

...

AIは水産養殖業界に浸透しつつある。品質と効率性の向上に加え、人員の削減にもつながる。

[[264097]]この農場では、人工知能技術の活用により、人員が 3 分の 2 削減されました。...

チューリングは71年前にニューラルネットワークを提案しました。 「インテリジェントマシン」が再び白熱した議論を巻き起こす

[[269208]]チューリングは 1948 年に「インテリジェント マシン」と題する論文を執筆し、...

LLM に代わる 2 億パラメータのタイミング モデル? Googleの画期的な研究は「初心者のミス」と批判される

最近、Google の論文が X などのソーシャル メディア プラットフォーム上で論争を巻き起こしま...

C言語の非数値計算でよく使われる5つの古典的なソートアルゴリズム

概要: ソートとは、一連の「順序付けられていない」レコードシーケンスを「順序付けられた」レコードシー...

チャットボット: ビジネスを成長させる 8 つの方法

[51CTO.com クイック翻訳] 顧客がビジネスの運命を決定する中心であることは間違いありません...

実験から実装まで: AI が金融サービスでその価値を証明している方法

金融機関にとって、新型コロナウイルス感染症のパンデミックからの回復は、人工知能(AI)と機械学習(M...

...

53ページのPDFがOpenAIの「AGIタイムライン」を公開、内部告発者:マスクの訴訟が状況を混乱させた

OpenAI の謎の Q* プロジェクトに関する新たな情報があります。今朝早く、54ページに及ぶGo...

これは機械学習ツールに関する最も包括的なハンドブックかもしれません。

[[419906]]私はこれまで、人工知能とデータサイエンスのオープンソース プロジェクトを数多く...

...