共计 2542 个字符,预计需要花费 7 分钟才能阅读完成。
作者 |Chanin Nantasenamat
编译 |VK
起源 |Towards Data Science
在本文中,我将向你展现如何应用 streamlit python 库疾速构建一个简略的数据驱动 web 应用程序,只需几行代码。
作为一名数据科学家或机器学习工程师,可能部署咱们的数据迷信我的项目是很重要的。传统的应用 Django 或 Flask 这样的框架来部署机器学习模型可能是一项艰巨和 / 或耗时的工作。
咱们正在构建的股票网络应用程序概述
明天,咱们将构建一个简略的 web 应用程序来显示股票价格和成交量。这将须要应用两个 Python 库,即 streamlit 和 yfinance。
从概念上讲,该应用程序将从雅虎检索历史市场数据,从 yfinance 库失去资金信息。此数据保留到 dataframe 中,streamlit 将应用此数据作为输出参数,以便将其显示为折线图。
装置必备库
在本教程中,咱们将应用两个须要装置的 Python 库。其中包含 streamlit 和 yfinance。你能够通过上面的 pip install 命令轻松实现此操作,以装置 streamlit:
pip install streamlit
对 yfinance 也执行雷同的操作,如下所示:
pip install yfinance
web 应用程序的代码
让咱们看看咱们明天正在构建的 web 应用程序的代码。你会发现只有不到 20 行代码(也就是说,如果不计算正文的话,那就把代码缩减到 14 行,其中 3 行是出于好看目标的空行)。
import yfinance as yf
import streamlit as st
st.write("""
# 简略的股票价格 App
Shown are the stock closing price and volume of Google!
""")
# https://towardsdatascience.com/how-to-get-stock-data-using-python-c0de1df17e75
# 定义股票代码
tickerSymbol = 'GOOGL'
# 获取这个股票的数据
tickerData = yf.Ticker(tickerSymbol)
# 为这个股票失去历史价格
tickerDf = tickerData.history(period='1d', start='2010-5-31', end='2020-5-31')
st.line_chart(tickerDf.Close)
st.line_chart(tickerDf.Volume)
代码的逐行解释
让咱们花点工夫来了解下面的代码。
- 1 和 2 行
导入 yfinance 并赋其 yf 的别名,导入 streamlit 并赋其 st 的别名。
- 4- 7 行
应用 st.write() 函数打印输出文本。这些打印进去的文本是用 markdown 格局写的。
-
9-16 行
应用 yfinance 库从雅虎检索历史市场数据。
- 第 11 行 - 将股票代码定义为 GOOGL。
- 第 13 行 - 应用 yf.Ticker() 函数,顾名思义,容许拜访股票代码数据。须要留神的是,tickerData 是一个 tickerData 对象,如果咱们将 tickerData 作为一个命令运行,咱们将失去以下输入 yfinance.Ticker object <GOOGL>。
- 第 15 行 - 创立 tickerDf 数据帧并定义日期范畴(从 2010 年 5 月 31 日到 2020 年 5 月 31 日)和时间段(1 天)。
- 18-19 行
应用 st.line_chart() 函数绘制折线图(应用第 15 行定义 Close 和 Volume 列的收盘价)。
运行 web 应用程序
将代码保留到名为我的 app.py,启动命令提示符(或 Microsoft Windows 中的 Power Shell)并运行以下命令:
streamlit run myapp.py
接下来,咱们将看到以下音讯:
> streamlit run myapp.py
You can now view your Streamlit app in your browser.
Local URL: http://localhost:8501
Network URL: http://10.0.0.11:8501
在短时间内,将弹出一个 internet 浏览器窗口,并将你疏导到已创立的 web 应用程序 http://localhost:8501,如下所示。
你曾经用 Python 创立了第一个 web 应用程序!
定制 web 应用程序
好吧,你可能想定制这个 web 应用程序的界面,请看如下代码。
import yfinance as yf
import streamlit as st
st.write("""
# Simple Stock Price App
Shown are the stock **closing price** and ***volume*** of Google!
""")
# https://towardsdatascience.com/how-to-get-stock-data-using-python-c0de1df17e75
# 定义股票代码
tickerSymbol = 'GOOGL'
# 获取这个股票的数据
tickerData = yf.Ticker(tickerSymbol)
# 为这个股票失去历史价格
tickerDf = tickerData.history(period='1d', start='2010-5-31', end='2020-5-31')
st.write("""## Closing Price""")
st.line_chart(tickerDf.Close)
st.write("""## Volume""")
让咱们花点工夫来了解下面的代码。
- 第 6 行
请留神,咱们将“closing price”加粗。还请留神,咱们通过在单词后面和前面应用三个星号使单词“volume”既粗体又斜体。
- 18-20 行和 22-25 行
在这里,咱们在收盘价和成交量图之前增加了一个 markdown 格局的题目。
当初咱们有了一个更新的网络应用程序。
原文链接:https://towardsdatascience.co…
欢送关注磐创 AI 博客站:
http://panchuang.net/
sklearn 机器学习中文官网文档:
http://sklearn123.com/
欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/