Streamlit實戰(zhàn)指南:使用Python創(chuàng)建交互式數(shù)據(jù)應用
定 價:148 元
叢書名:人工智能與大數(shù)據(jù)系列
- 作者:(澳)Tyler Richards(泰勒·理查德斯)
- 出版時間:2024/8/1
- ISBN:9787121484520
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:284
- 紙張:
- 版次:01
- 開本:16開
當數(shù)據(jù)科學家使用Python處理數(shù)據(jù),并希望創(chuàng)建展示ML模型的數(shù)據(jù)應用程序,以及進行易于創(chuàng)建的交互式可視化時,那么Streamlit將是最理想的選擇。Streamlit for Data Science(第2版)向數(shù)據(jù)科學家展示了如何在Python內(nèi)快速創(chuàng)建和部署小部件和儀表板。這可以幫助他們在幾小時內(nèi)而不是幾天內(nèi)創(chuàng)建原型。 為了掌握Streamlit這項技術,需要通過大量的實際案例來學習。本書由一個富有創(chuàng)造力的Streamlit用戶編寫,他在第一版發(fā)布后就一直使用該技術,本選題建立在前一版的實用性基礎上,帶來大量的更新,包括將Streamlit連接到Snowflake數(shù)據(jù)倉庫,部署在Hugging Face上,以及在GitHub上提供完全更新的代碼庫,通過這些內(nèi)容可以幫助讀者練習新發(fā)布的技能。 讀者將從Streamlit的基礎知識開始Streamlit的學習,并通過使用機器學習模型和制作高質(zhì)量的交互式應用程序逐漸熟悉Streamlit的使用技巧。本書通過實際示例幫讀者掌握許多更具挑戰(zhàn)性的主題,如Streamlit組件、美化應用程序和快速部署。 通過本書,讀者將能夠輕松快速地在Streamlit中創(chuàng)建動態(tài)web應用程序。
泰勒·理查德斯(Tyler Richards)是Snowflake公司的一名數(shù)據(jù)科學家,專注于與Streamlit相關的項目。他于2022年春季通過Streamlit的收購加入Snowflake。加入Snowflake之前,他在Facebook(Meta)負責完整性評估,并協(xié)助非營利組織Protect Democracy推進美國選舉。他接受過數(shù)據(jù)科學和工業(yè)工程的培訓,業(yè)余時間喜歡以有趣的方式應用數(shù)據(jù)科學,例如將機器學習應用于校園選舉,創(chuàng)建算法來幫助寶潔公司定位使用的Tide Pod的用戶。
從2013年底開始在美國大學作為客座教授,主持數(shù)據(jù)分析與數(shù)據(jù)科學項目的研究生研修班,截止2021年已經(jīng)開辦近20期,培訓來自世界多個國家的數(shù)百名碩士(含博士)研究生。并獨立編寫數(shù)據(jù)分析與數(shù)據(jù)科學教材,并設計多版實訓教程。在甲骨文公司,作為亞太區(qū)的數(shù)據(jù)科學家參與Oracle數(shù)據(jù)科學產(chǎn)品的研發(fā)與推廣。近期的主要研究方向為機器視覺與高性能運算在現(xiàn)實當中的應用。作為甲骨文公司官方媒體的管理員及編輯,從2016年起編寫并發(fā)表近100篇技術文章,涵蓋數(shù)據(jù)庫技術、數(shù)據(jù)科學以及機器視覺等方面。
第1章 Streamlit簡介技術要求 002
為什么選擇Streamlit 002
安裝Streamlit 003
組織Streamlit應用程序 004
Streamlit繪圖演示 005
從頭開始創(chuàng)建一個應用程序 008
在Streamlit應用中使用用戶輸入 015
在Streamlit中添加文本 018
本章小結 020
第2章 上傳、下載和操作數(shù)據(jù)技術要求 021
環(huán)境設置:使用Palmer的Penguins
數(shù)據(jù)集 022
探索Palmer的Penguins數(shù)據(jù)集 023
Streamlit中的流程控制 034
調(diào)試Streamlit應用程序 037
在Streamlit中開發(fā) 038
在Jupyter中探索,然后復制到
Streamlit中 038
Streamlit中的數(shù)據(jù)操作 039
緩存簡介 040
會話狀態(tài)的持久性 044
本章小結 048
第3章 數(shù)據(jù)可視化技術要求 050
舊金山樹木(SF Tree)數(shù)據(jù)集:
一個新的數(shù)據(jù)集 050
Streamlit可視化用例 052
Streamlit的內(nèi)置圖表函數(shù) 052
Streamlit的內(nèi)置可視化選項 058
Plotly 059
Matplotlib和Seaborn 060
Bokeh 062
Altair 064
PyDeck 066
配置選項 067
本章小結 074
第4章 Streamlit中的機器學習和人工智能技術要求 076
標準機器學習工作流程 076
預測企鵝的種類 077
在Streamlit中利用預訓練的
機器學習模型 081
在Streamlit應用程序中訓練模型 085
理解機器學習結果 090
集成外部機器學習庫:
Hugging Face示例 094
集成外部AI庫:OpenAI示例 096
在OpenAI中進行身份驗證 097
OpenAI API的成本 097
Streamlit和OpenAI 097
本章小結 103
第5章 使用Streamlit社區(qū)云部署Streamlit技術要求 105
使用Streamlit社區(qū)云 105
GitHub快速入門 106
使用Streamlit社區(qū)云進行部署 112
調(diào)試Streamlit社區(qū)云 115
Streamlit Secrets 116
本章小結 119
第6章 美化Streamlit應用程序技術要求 121
設置舊金山(SF)樹木數(shù)據(jù)集 121
在Streamlit中使用列 122
探索頁面配置 127
使用Streamlit標簽 130
使用Streamlit側邊欄 132
使用顏色選擇器輸入顏色 137
創(chuàng)建多頁應用程序 139
可編輯的DataFrame 143
本章小結 146
第7章 探索Streamlit組件技術要求 149
使用streamlit-aggrid添加可編輯的 DataFrame 150
使用streamlit-plotlyevents
創(chuàng)建可鉆取的圖表 154
使用Streamlit組件——streamlit-lottie 158
使用Streamlit組件
——streamlit-pandas-profiling 160
使用st-folium創(chuàng)建交互式地圖 163
使用streamlit-extras創(chuàng)建輔助函數(shù) 167
查找更多組件 168
本章小結 168
第8章 使用Hugging Face和Heroku部署
Streamlit應用程序技術要求 170
在Streamlit Community Cloud、Hugging Face和Heroku之間進行選擇 170
使用Hugging Face部署
Streamlit應用程序 171
使用Heroku部署Streamlit
應用程序 175
設置并登錄Heroku 176
克隆并配置本地存儲庫 176
部署到Heroku 178
本章小結 179
第9章 連接數(shù)據(jù)庫
技術要求 181
使用Streamlit連接到Snowflake 182
使用Streamlit連接到BigQuery 187
向查詢鏈接添加用戶輸入 191
組織查詢 193
本章小結 195
第10章 使用Streamlit優(yōu)化求職申請
技術要求 196
Streamlit技能展示項目 197
機器學習-企鵝應用程序 198
可視化-美觀的樹木應用 200
在Streamlit中優(yōu)化求職申請 201
問題 202
回答問題1 203
回答問題2 212
本章小結 215
第11章 數(shù)據(jù)項目——在Streamlit中制作項目原型
技術要求 217
數(shù)據(jù)科學創(chuàng)意 217
收集和清理數(shù)據(jù) 219
創(chuàng)建最小可行產(chǎn)品(MVP) 221
我每年閱讀多少本書 222
我通常需要多長時間讀完一本書 223
我讀的書都有多少頁 225
我所讀的書籍都是哪一年出版的 226
如何比較我與其他Goodreads
用戶的書評 229
迭代改進 232
通過動畫進行美化 233
通過文本和額外的統(tǒng)計數(shù)據(jù)
構建敘述 234
通過文本和附加統(tǒng)計數(shù)據(jù)
構建敘事 236
托管和推廣 238
本章小結 238
第12章 Streamlit資深用戶
Fanilo Andrianasolo 240
Adrien Treuille 244
Gerard Bentley 247
Arnaud Miribel和Zachary
Blackwood 251
Yuichiro Tachibana 257
本章小結 261