在本文中,我将向你展示如何使用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 yfimport streamlit as stst.write("""# 简单的股票价格AppShown 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 。 第15行-创建tickerDf数据帧并定义日期范围(从2010年5月31日到2020年5月31日)和时间段(1天)。
  • 18-19行

使用st.line_chart()函数绘制折线图(使用第15行定义CloseVolume 列的收盘价)。

运行web应用程序

将代码保存到名为我的app.py,启动命令提示符(或Microsoft Windows中的Power Shell)并运行以下命令:

streamlit run myapp.py

接下来,我们将看到以下消息:

> streamlit run myapp.pyYou can now view your Streamlit app in your browser.Local URL: http://localhost:8501Network URL: http://10.0.0.11:8501

在短时间内,将弹出一个internet浏览器窗口,并将你引导到已创建的web应用程序http://localhost:8501,如下所示。

你已经用Python创建了第一个web应用程序!


定制web应用程序

好吧,你可能想定制这个web应用程序的界面,请看如下代码。

import yfinance as yfimport streamlit as stst.write("""# Simple Stock Price AppShown 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.com/how-to-build-a-data-science-web-app-in-python-61d1bed65020

usagestatsmanager获取正在运行应用_用Python构建数据科学Web应用程序相关推荐

  1. python 搭建web应用程序_用Python构建数据科学Web应用程序

    作者|Chanin Nantasenamat 编译|VK 来源|Towards Data Science 在本文中,我将向你展示如何使用streamlit python库快速构建一个简单的数据驱动we ...

  2. python打开各种文件格式_使用python读取数据科学最常用的文件格式(转)

    Author:kevinelstri DateTime:2017/3/13 1.什么是文件格式? 文件格式是在文件中存储信息的一种标准方法.首先,文件格式指定文件是一个二进制或ASCII文件.其次,文 ...

  3. python读什么类型文件最快的软件_使用python读取数据科学最常用的文件格式(转)...

    My First Heading My first paragraph.

  4. 用python 入门数据科学_如何高效入门数据科学?

    链接散落的教程文章,做个详细的导读,助你更高效入门数据科学. 问题 2017年6月以来,我陆续在自己的简书专栏<玉树芝兰>里,写了一系列数据科学教程. 这源于一次研究生课编程工作坊尝试.受 ...

  5. 白裤子变粉裤子怎么办_使用裤子构建构建数据科学的monorepo

    白裤子变粉裤子怎么办 At HousingAnywhere, one of the first major obstacles we had to face when scaling the Data ...

  6. 为什么说Python是数据科学领域的最佳语言?

    人人都说Python好,但Python究竟有多大的魔力能够如此备受欢迎? 近日,TIOBE 最新一期编程语言排行榜新鲜出炉,Python再次位居榜首.作为时下最火的编程语言,Python可以说是应用极 ...

  7. Python的数据科学函数包(三)——matplotlib(plt)

    Matplotlib是Python最著名的2D绘图库 c opencv要比PIL, plt的速度更快一些 matplotlib中一张图的具体构造 如果将Matplotlib绘图和我们平常画画相类比,可 ...

  8. 数据科学r语言_您应该为数据科学学习哪些语言?

    数据科学r语言 Data science is an exciting field to work in, combining advanced statistical and quantitativ ...

  9. 为什么Python在数据科学领域比R更受欢迎呢?

    2020-02-16 12:32:00 全文共2256字,预计学习时长7分钟 来源:aliyun 新入门的数据科学家都面临一个非常重要的问题:我应该学习Python还是R? 这个问题非常重要,因为学习 ...

最新文章

  1. GitHub的MySQL高可用性实践
  2. “5W1H”带你来学习JavaScript
  3. elasticsearch狂神说笔记_神级学习笔记!别再说不会Elasticsearch了,这位架构师都整理好了...
  4. vertx web连接超时 阻塞_Flink之基于Vertx的Mysql异步IO
  5. u3d_shader_surface_shader_1
  6. 谈谈如何在面试中发掘程序猿的核心竞争力 什么是程序员的核心竞争力?
  7. 哎呀你不要把他叫出来_不吼不叫,学会这3个亲子互动方法,孩子不专注都难...
  8. js之数据类型的比较
  9. SQL ---- 查询字段为逗号拼接的字符串
  10. neo4j 如何删除所以的节点和关系
  11. 计算机excel中百分比怎么算,excel如何自动算百分比
  12. Oracle + PlSql 下载安装配置
  13. 机器人研发十大热门编程语言:不死 Java、不朽 C/C ++、新贵 Python
  14. 李沐精读论文:MAE 《Masked Autoencoders Are Scalable Vision Learners》
  15. 【地图学笔记】1 地图的基本知识
  16. 【数学建模】常用微分方程模型 + 详细手写公式推导 + Matlab代码实现
  17. 安装Android studio中遇到sdk工具选项缺失和HAXM安装。
  18. jsp+ssm计算机毕业设计智慧农产品朔源系统【附源码】
  19. win10使用easybcd误删引导进不去系统解决办法
  20. Winseeing外贸软件如何提高仓储物流管理水平

热门文章

  1. 安全服务如何为SD-WAN增值?—Vecloud
  2. Spring MVC 搭建web项目示例
  3. django(models)视图与html 简单的操作
  4. Codeforces Round #247 (Div. 2)C. k-Tree(动态规划)
  5. zend studio 远程调试 php
  6. the Determine in June
  7. 接口抽象类继承父类和子类
  8. php中json_encode中文编码问题分析
  9. java心得---java语言基础
  10. [转]SAP ABAP中使用Read_Text函数读取项目文本的方法