{"id":9744,"date":"2020-09-21T08:20:24","date_gmt":"2020-09-21T08:20:24","guid":{"rendered":"https:\/\/www.experfy.com\/blog\/?p=9744"},"modified":"2023-11-02T16:56:26","modified_gmt":"2023-11-02T16:56:26","slug":"how-to-build-a-data-science-web-app-in-python","status":"publish","type":"post","link":"https:\/\/www.experfy.com\/blog\/bigdata-cloud\/how-to-build-a-data-science-web-app-in-python\/","title":{"rendered":"How to Build a Data Science Web App in Python"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"9744\" class=\"elementor elementor-9744\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-2d66fa88 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2d66fa88\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4f74553b\" data-id=\"4f74553b\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-69307191 elementor-widget elementor-widget-text-editor\" data-id=\"69307191\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p class=\"has-medium-font-size\"><em>Part 1: Your First Web App in Just a Few Lines of Code<\/em><\/p>\n\n\n\n<p id=\"a3fb\">In this article, I will show you how you can quickly build a simple data-driven web app using the\u00a0<em>streamlit<\/em>\u00a0Python library in just a few lines of code.<\/p>\n\n\n\n<p id=\"bbfa\">As a Data Scientist or Machine Learning Engineer, it is important to be able to deploy our data science project. Traditional deployment of machine learning models with established framework such as Django or Flask may be a daunting and\/or time-consuming task.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3b76351 elementor-widget elementor-widget-text-editor\" data-id=\"3b76351\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"791e\">This article is based on a\u00a0<a href=\"https:\/\/www.youtube.com\/watch?v=ZZ4B0QUHuNc\" rel=\"noopener\">YouTube video<\/a>\u00a0that I made on the same topic (<a href=\"https:\/\/www.youtube.com\/watch?v=ZZ4B0QUHuNc\" rel=\"noopener\">How to Build Your First Data Science Web App in Python<\/a>) in which you can watch it alongside reading this article.https:\/\/cdn.embedly.com\/widgets\/media.html?<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b24a34f elementor-widget elementor-widget-video\" data-id=\"b24a34f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;youtube_url&quot;:&quot;https:\\\/\\\/www.youtube.com\\\/watch?v=ZZ4B0QUHuNc&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-wrapper elementor-open-inline\">\n\t\t\t<div class=\"elementor-video\"><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-eecbeb4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"eecbeb4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3ec9d9e\" data-id=\"3ec9d9e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-879e570 elementor-widget elementor-widget-heading\" data-id=\"879e570\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Overview of the stock web app that we are building<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-abbd187 elementor-widget elementor-widget-text-editor\" data-id=\"abbd187\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"7649\">Today, we will be building a simple web app that displays the stock price and volume. This will require the use of two Python libraries namely\u00a0<code>streamlit<\/code>\u00a0and\u00a0<code>yfinance<\/code>. Conceptually, the app will retrieve historical market data from Yahoo! Finance from the\u00a0<code>yfinance<\/code>\u00a0library. This data is saved into a dataframe and\u00a0<code>streamlit<\/code>\u00a0will use this data as input argument for displaying it as a line chart.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0fc857c elementor-widget elementor-widget-heading\" data-id=\"0fc857c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Install prerequisite libraries<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e219c0f elementor-widget elementor-widget-text-editor\" data-id=\"e219c0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"9d00\">In this tutorial, we will be using two Python libraries that require installation. These include\u00a0<code>streamlit<\/code>\u00a0and\u00a0<code>yfinance<\/code>. You can easily do this via the<code>pip install<\/code>\u00a0command as follows to install\u00a0<code>streamlit<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pip install streamlit<\/pre>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ba1f9aa elementor-widget elementor-widget-text-editor\" data-id=\"ba1f9aa\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"4214\">And do the same also for\u00a0<code>yfinance<\/code>\u00a0as follows:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pip install yfinance<\/pre>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-48ca142 elementor-widget elementor-widget-heading\" data-id=\"48ca142\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Code of the web app<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1e5591d elementor-widget elementor-widget-text-editor\" data-id=\"1e5591d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"6ae4\">Let\u2019s take a look at the code of the web app that we are building today. You will see that there is less less than 20 lines of code (<em>i.e.<\/em>\u00a0if not counting the comments then that trims it down to 14 lines of code where 3 of those lines are empty lines for aesthetic purpose).<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3e503c0 elementor-widget elementor-widget-image\" data-id=\"3e503c0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"680\" height=\"455\" src=\"https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/09\/Untitled-1-6-1.png\" class=\"attachment-large size-large wp-image-33902\" alt=\"\" srcset=\"https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/09\/Untitled-1-6-1.png 680w, https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/09\/Untitled-1-6-1-300x201.png 300w, https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/09\/Untitled-1-6-1-610x408.png 610w\" sizes=\"(max-width: 680px) 100vw, 680px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b6129ce elementor-widget elementor-widget-heading\" data-id=\"b6129ce\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Line-by-line explanation of the code<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3097a82 elementor-widget elementor-widget-text-editor\" data-id=\"3097a82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"9d78\">Let\u2019s take some time to make some understanding of the above code.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>Lines 1 and 2<br \/><\/em><\/strong>Imports\u00a0<code>yfinance<\/code>\u00a0and assigning it the alias of\u00a0<code>yf<\/code>\u00a0as well as importing\u00a0<code>streamlit<\/code>\u00a0and assigning it the alias of\u00a0<code>st<\/code>.<\/li>\n<li><strong><em>Lines 4\u20137<\/em><\/strong><br \/>Uses the\u00a0<code>st.write()<\/code>\u00a0function to print out text. These printed out text are written in markdown format.<\/li>\n<li><strong><em>Lines 9\u201316<\/em><\/strong><br \/>Uses the\u00a0<code>yfinance<\/code>\u00a0library to retrieve historical market data from Yahoo! Finance.<br \/>*\u00a0<em>Line 11 \u2014\u00a0<\/em>Defines the ticker symbol as\u00a0<code>GOOGL<\/code>.<br \/>*\u00a0<em>Line 13<\/em>\u00a0\u2014 Creates the\u00a0<code>tickerData<\/code>\u00a0variable using the\u00a0<code>yf.Ticker()<\/code>\u00a0function that as the name imply allows access to the ticker data. It should be noted that the tickerData is a\u00a0<em>Ticker object<\/em>\u00a0and if we run tickerData as a command we get the following output\u00a0<code>yfinance.Ticker object &lt;GOOGL&gt;<\/code>.<br \/>*\u00a0<em>Line 15<\/em>\u00a0\u2014 Creates the\u00a0<code>tickerDf<\/code>\u00a0dataframe and defines the date range (from May 31, 2010 to May 31, 2020) and time period (1 day).<\/li>\n<\/ul>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-38999bd elementor-widget elementor-widget-image\" data-id=\"38999bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/miro.medium.com\/max\/1419\/1*FxgsBG4TnNznazig_jgLig.png\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c40aeae elementor-widget elementor-widget-text-editor\" data-id=\"c40aeae\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<ul class=\"wp-block-list\">\n<li><strong><em>Lines 18 and 19<\/em><\/strong><br \/>Uses the\u00a0<code>st.line_chart()<\/code>\u00a0function to plot a line chart (using the close price from the\u00a0<em>Close<\/em>\u00a0and\u00a0<em>Volume<\/em>\u00a0columns from the\u00a0<code>tickerDf<\/code>\u00a0dataframe as defined on line 15.<\/li>\n<\/ul>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-10f5a5a elementor-widget elementor-widget-heading\" data-id=\"10f5a5a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Running the web app<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7be0115 elementor-widget elementor-widget-text-editor\" data-id=\"7be0115\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"2804\">After saving the code into a file called myapp.py, fire up the command prompt (or Power Shell in Microsoft Windows) and run the following command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">streamlit run myapp.py<\/pre>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-66e9ec1 elementor-widget elementor-widget-text-editor\" data-id=\"66e9ec1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"b721\">Next, we should see the following message:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&gt; streamlit run myapp.pyYou can now view your Streamlit app in your browser.Local URL: <a href=\"http:\/\/www.experfy.com:8501\/\">http:\/\/www.experfy.com:8501<\/a><br \/>Network URL: http:\/\/10.0.0.11:8501<\/pre>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aeb1a16 elementor-widget elementor-widget-text-editor\" data-id=\"aeb1a16\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"baa2\">In a short moment, an internet browser window should pop-up and directs you to the created web app by taking you to\u00a0<code><a href=\"http:\/\/www.experfy.com:8501.\/\">http:\/\/www.experfy.com:8501<\/a><\/code>\u00a0as shown below.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2145eb4 elementor-widget elementor-widget-image\" data-id=\"2145eb4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/miro.medium.com\/max\/1684\/1*9MEybR8iR0TuruerSzcj5w.png\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-597a9e4 elementor-widget elementor-widget-heading\" data-id=\"597a9e4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Congratulations! You have created your first web app in Python!\n<hr class=\"wp-block-separator\" \/><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-caf54e3 elementor-widget elementor-widget-heading\" data-id=\"caf54e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\n<h1 class=\"wp-block-heading\" id=\"7c57\">Customizing the web app<\/h1>\n\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fc4953a elementor-widget elementor-widget-text-editor\" data-id=\"fc4953a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"b46f\">Okay, so you probably want to spice things up a bit and customize the web app.<\/p>\n\n\n\n<p>&nbsp;<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2284624 elementor-widget elementor-widget-image\" data-id=\"2284624\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"http:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/09\/Untitled-2-5.png\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-107bc10 elementor-widget elementor-widget-text-editor\" data-id=\"107bc10\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"2afb\">Let\u2019s take some time to make some understanding of the above code.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>Line 6<br \/><\/em><\/strong>Notice that we bold the\u00a0<em>\u201cclosing price\u201d\u00a0<\/em>using two asterisks in front and behind the phrase as follows:\u00a0<code>**closing price**<\/code>. Also notice that we made the word \u201cvolume\u201d to be both bold and in italic form by using three asterisks in front and behind the word as follows:\u00a0<code>***volume***<\/code>.<\/li>\n<li><strong><em>Line 18\u201320 and 22\u201325<br \/><\/em><\/strong>Here we added a header titles in markdown format right before the\u00a0<em>closing price\u00a0<\/em>and the\u00a0<em>volume<\/em>\u00a0plots.<\/li>\n<\/ul>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd695cc elementor-widget elementor-widget-image\" data-id=\"cd695cc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/miro.medium.com\/max\/1772\/1*C6TgiMLoNrny1m_XQH-BlQ.png\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-afddc8f elementor-widget elementor-widget-heading\" data-id=\"afddc8f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Voila!<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4e855dd elementor-widget elementor-widget-text-editor\" data-id=\"4e855dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p id=\"f2a5\">And now we have an updated web app that should automatically update right before your eyes.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>As a Data Scientist or Machine Learning Engineer, it is important to be able to deploy our data science project. This article l shows you how you can quickly build a simple data-driven web app using the streamlit Python library in just a few lines of code. <\/p>\n","protected":false},"author":886,"featured_media":9745,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","footnotes":""},"categories":[187],"tags":[94,114,641],"ppma_author":[3736],"class_list":["post-9744","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bigdata-cloud","tag-data-science","tag-python","tag-web-app"],"authors":[{"term_id":3736,"user_id":886,"is_guest":0,"slug":"chanin-nantasenamat","display_name":"Chanin Nantasenamat","avatar_url":"https:\/\/www.experfy.com\/blog\/wp-content\/uploads\/2020\/08\/Chanin-Nantasenamat-150x150.jpg","user_url":"http:\/\/www.mahidol.ac.th\/mueng\/","last_name":"Nantasenamat","first_name":"Chanin","job_title":"","description":"Chanin Nantasenamat is Associate Professor and Head, Center of Data Mining and Biomedical Informatics at Mahidol University, Thailand. He is also Founder of Data Professor YouTube Channel and Associate Editor at Frontiers in Pharmacology. Thought Leader on AI and ML Education, he was a Visiting Professor at Uppsala University, Lund University, University of California at Los Angeles as well as the California State University at Fullerton."}],"_links":{"self":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/9744","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/users\/886"}],"replies":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/comments?post=9744"}],"version-history":[{"count":8,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/9744\/revisions"}],"predecessor-version":[{"id":33905,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/posts\/9744\/revisions\/33905"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/media\/9745"}],"wp:attachment":[{"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/media?parent=9744"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/categories?post=9744"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/tags?post=9744"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.experfy.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=9744"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}