Python數(shù)據(jù)分析與應(yīng)用課件_第1頁
Python數(shù)據(jù)分析與應(yīng)用課件_第2頁
Python數(shù)據(jù)分析與應(yīng)用課件_第3頁
Python數(shù)據(jù)分析與應(yīng)用課件_第4頁
Python數(shù)據(jù)分析與應(yīng)用課件_第5頁
已閱讀5頁,還剩360頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Python數(shù)據(jù)分析概述2018/1/8第1頁,共365頁。1熟悉Python數(shù)據(jù)分析的工具安裝 Python 的 Anaconda 發(fā)行版掌握 Jupyter Notebook 常用功能目錄認識數(shù)據(jù)分析234第2頁,共365頁。 廣義的數(shù)據(jù)分析包括狹義數(shù)據(jù)分析和數(shù)據(jù)挖掘。 狹義的數(shù)據(jù)分析是指根據(jù)分析目的,采用對比分析、分組分析、交叉分析和回歸分析等分析方法,對收集來的數(shù)據(jù)進行處理與分析,提取有價值的信息,發(fā)揮數(shù)據(jù)的作用,得到一個特征統(tǒng)計量結(jié)果的過程。 數(shù)據(jù)挖掘則是從大量的、不完全的、有噪聲的、模糊的、隨機的實際應(yīng)用數(shù)據(jù)中,通過應(yīng)用聚類、分類、回歸和關(guān)聯(lián)規(guī)則等技術(shù),挖掘潛在價值的過程。數(shù)據(jù)分析

2、的概念第3頁,共365頁。數(shù)據(jù)分析的流程典型的數(shù)據(jù)分析的流程第4頁,共365頁。需求分析:數(shù)據(jù)分析中的需求分析也是數(shù)據(jù)分析環(huán)節(jié)的第一步和最重要的步驟之一,決定了后續(xù)的分析的方向、方法。數(shù)據(jù)獲?。簲?shù)據(jù)是數(shù)據(jù)分析工作的基礎(chǔ),是指根據(jù)需求分析的結(jié)果提取,收集數(shù)據(jù)。數(shù)據(jù)預(yù)處理:數(shù)據(jù)預(yù)處理是指對數(shù)據(jù)進行數(shù)據(jù)合并,數(shù)據(jù)清洗,數(shù)據(jù)變換和數(shù)據(jù)標準化,數(shù)據(jù)變換后使得整體數(shù)據(jù)變?yōu)楦蓛粽R,可以直接用于分析建模這一過程的總稱。分析與建模:分析與建模是指通過對比分析、分組分析、交叉分析、回歸分析等分析方法和聚類、分類、關(guān)聯(lián)規(guī)則、智能推薦等模型與算法發(fā)現(xiàn)數(shù)據(jù)中的有價值信息,并得出結(jié)論的過程。模型評價與優(yōu)化:模型評價是指

3、對已經(jīng)建立的一個或多個模型,根據(jù)其模型的類別,使用不同的指標評價其性能優(yōu)劣的過程。部署:部署是指將通過了正式應(yīng)用數(shù)據(jù)分析結(jié)果與結(jié)論應(yīng)用至實際生產(chǎn)系統(tǒng)的過程。數(shù)據(jù)分析的流程典型的數(shù)據(jù)分析的流程第5頁,共365頁。主要是客戶的基本數(shù)據(jù)信息進行商業(yè)行為分析,首先界定目標客戶,根據(jù)客戶的需求,目標客戶的性質(zhì),所處行業(yè)的特征以及客戶的經(jīng)濟狀況等基本信息使用統(tǒng)計分析方法和預(yù)測驗證法,分析目標客戶,提高銷售效率。其次了解客戶的采購過程,根據(jù)客戶采購類型、采購性質(zhì)進行分類分析制定不同的營銷策略。最后還可以根據(jù)已有的客戶特征,進行客戶特征分析、客戶忠誠分析、客戶注意力分析、客戶營銷分析和客戶收益分析。了解數(shù)據(jù)分

4、析應(yīng)用場景1. 客戶分析第6頁,共365頁。產(chǎn)品分析主要是競爭產(chǎn)品分析,通過對競爭產(chǎn)品的分析制定自身產(chǎn)品策略。價格分析又可以分為成本分析和售價分析,成本分析的目的是降低不必要成本,售價分析的目的是制定符合市場的價格。渠道分析目的是指對產(chǎn)品的銷售渠道進行分析,確定最優(yōu)的渠道配比。廣告與促銷分析則能夠結(jié)合客戶分析,實現(xiàn)銷量的提升,利潤的增加。了解數(shù)據(jù)分析應(yīng)用場景2. 營銷分析: 囊括了產(chǎn)品分析,價格分析,渠道分析,廣告與促銷分析這四類分析。第7頁,共365頁。 以不同社交媒體渠道生成的內(nèi)容為基礎(chǔ),實現(xiàn)不同社交媒體的用戶分析,訪問分析,互動分析等。同時,還能為情感和輿情監(jiān)督提供豐富的資料。用戶分析主

5、要根據(jù)用戶注冊信息,登錄平臺的時間點和平時發(fā)表的內(nèi)容等用戶數(shù)據(jù),分析用戶個人畫像和行為特征。訪問分析則是通過用戶平時訪問的內(nèi)容,分析用戶的興趣愛好,進而分析潛在的商業(yè)價值?;臃治龈鶕?jù)互相關(guān)注對象的行為預(yù)測該對象未來的某些行為特征。了解數(shù)據(jù)分析應(yīng)用場景3. 社交媒體分析第8頁,共365頁。 新型的病毒防御系統(tǒng)可使用數(shù)據(jù)分析技術(shù),建立潛在攻擊識別分析模型,監(jiān)測大量網(wǎng)絡(luò)活動數(shù)據(jù)和相應(yīng)的訪問行為,識別可能進行入侵的可疑模式,做到未雨綢繆。了解數(shù)據(jù)分析應(yīng)用場景4. 網(wǎng)絡(luò)安全第9頁,共365頁。 通過物聯(lián)網(wǎng)技術(shù)能夠收集和分析設(shè)備上的數(shù)據(jù)流,包括連續(xù)用電、零部件溫度、環(huán)境濕度和污染物顆粒等無數(shù)潛在特征,建

6、立設(shè)備管理模型,從而預(yù)測設(shè)備故障,合理安排預(yù)防性的維護,以確保設(shè)備正常作業(yè),降低因設(shè)備故障帶來的安全風(fēng)險。了解數(shù)據(jù)分析應(yīng)用場景5. 設(shè)備管理第10頁,共365頁。RPythonMATLAB語言學(xué)習(xí)難易程度入門難度低入門難度一般入門難度一般使用場景數(shù)據(jù)分析,數(shù)據(jù)挖掘,機器學(xué)習(xí),數(shù)據(jù)可視化等。數(shù)據(jù)分析,機器學(xué)習(xí),矩陣運算,科學(xué)數(shù)據(jù)可視化,數(shù)字圖像處理,web應(yīng)用,網(wǎng)絡(luò)爬蟲,系統(tǒng)運維等。矩陣計算,數(shù)值分析,科學(xué)數(shù)據(jù)可視化,機器學(xué)習(xí),符號計算,數(shù)字圖像處理,數(shù)字信號處理,仿真模擬等。第三方支持擁有大量的Packages,能夠調(diào)用C,C+,F(xiàn)ortran,Java等其他程序語言。擁有大量的第三方庫,能夠

7、簡便地調(diào)用C,C+,F(xiàn)ortran,Java等其他程序語言。擁有大量專業(yè)的工具箱,在新版本中加入了對C,C+,Java的支持。流行領(lǐng)域工業(yè)界學(xué)術(shù)界工業(yè)界學(xué)術(shù)界工業(yè)界學(xué)術(shù)界軟件成本開源免費開源免費商業(yè)收費了解數(shù)據(jù)分析常用工具目前主流的數(shù)據(jù)分析語言有R,Python,MATLAB三種程序語言。第11頁,共365頁。 物流是物品從供應(yīng)地向接收地的實體流動。通過業(yè)務(wù)系統(tǒng)和GPS定位系統(tǒng)獲得數(shù)據(jù),對于客戶使用數(shù)據(jù)構(gòu)建交通狀況預(yù)測分析模型,有效預(yù)測實時路況、物流狀況、車流量、客流量和貨物吞吐量,進而提前補貨,制定庫存管理策略。了解數(shù)據(jù)分析應(yīng)用場景6. 交通物流分析第12頁,共365頁。 身份信息泄露盜用事

8、件逐年增長,隨之而來的是欺詐行為和交易的增多。公安機關(guān),各大金融機構(gòu),電信部門可利用用戶基本信息,用戶交易信息,用戶通話短信信息等數(shù)據(jù),識別可能發(fā)生的潛在欺詐交易,做到提前預(yù)防未雨綢繆。了解數(shù)據(jù)分析應(yīng)用場景7. 欺詐行為檢測第13頁,共365頁。安裝 Python 的 Anaconda 發(fā)行版掌握 Jupyter Notebook 常用功能目錄341熟悉Python數(shù)據(jù)分析的工具認識數(shù)據(jù)分析2第14頁,共365頁。語法簡單精練。對于初學(xué)者來說,比起其他編程語言,Python更容易上手。有很強大的庫。可以只使用Python這一種語言去構(gòu)建以數(shù)據(jù)為中心的應(yīng)用程序。功能強大。Python是一個混合體

9、,豐富的工具集使它介于傳統(tǒng)的腳本語言和系統(tǒng)語言之間。Python不僅具備所有腳本語言簡單和易用的特點,還提供了編譯語言所具有的高級軟件工程工具。不僅適用于研究和原型構(gòu)建,同時也適用于構(gòu)建生產(chǎn)系統(tǒng)。研究人員和工程技術(shù)人員使用同一種編程工具,會給企業(yè)帶來非常顯著的組織效益,并降低企業(yè)的運營成本。Python是一門膠水語言。Python程序能夠以多種方式輕易地與其他語言的組件“粘接”在一起。了解Python數(shù)據(jù)分析的優(yōu)勢Python 數(shù)據(jù)分析主要包含以下 5 個方面優(yōu)勢第15頁,共365頁。是一個增強的Python shell,目的是提高編寫、測試、調(diào)試Python代碼的速度。主要用于交互式數(shù)據(jù)并行

10、處理,是分布式計算的基礎(chǔ)架構(gòu)。提供了一個類似于Mathematica的HTML筆記本,一個基于Qt框架的GUI控制臺,具有繪圖、多行編輯以及語法高亮顯示等功能。了解Python數(shù)據(jù)分析常用類庫1IPython科學(xué)計算標準工具集的組成部分第16頁,共365頁??焖俑咝У亩嗑S數(shù)組對象 ndarray。對數(shù)組執(zhí)行元素級的計算以及直接對數(shù)組執(zhí)行數(shù)學(xué)運算的函數(shù)。讀寫硬盤上基于數(shù)組的數(shù)據(jù)集的工具。線性代數(shù)運算、傅里葉變換,以及隨機數(shù)生成的功能。將 C、C+、Fortran 代碼集成到 Python 的工具。了解Python數(shù)據(jù)分析常用類庫2NumPy(Numerical Python) Python 科學(xué)

11、計算的基礎(chǔ)包第17頁,共365頁。SciPy 主要包含了 8 個模塊,不同的子模塊有不同的應(yīng)用,如插值、積分、優(yōu)化、圖像處理和特殊函數(shù)等。egrate 數(shù)值積分例程和微分方程求解器scipy.linalg 擴展了由 numpy.linalg 提供的線性代數(shù)例程和矩陣分解功能scipy.optimize 函數(shù)優(yōu)化器(最小化器)以及根查找算法scipy.signal 信號處理工具scipy.sparse 稀疏矩陣和稀疏線性系統(tǒng)求解器scipy.special SPECFUN(這是一個實現(xiàn)了許多常用數(shù)學(xué)函數(shù)的 Fortran 庫)的包裝器scipy.stats 檢驗連續(xù)和離散概率分

12、布、各種統(tǒng)計檢驗方法,以及更好的描述統(tǒng)計法scipy.weave 利用內(nèi)聯(lián) C+代碼加速數(shù)組計算的工具了解Python數(shù)據(jù)分析常用類庫3SciPy專門解決科學(xué)計算中各種標準問題域的模塊的集合第18頁,共365頁。提供了一系列能夠快速、便捷地處理結(jié)構(gòu)化數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和函數(shù)。高性能的數(shù)組計算功能以及電子表格和關(guān)系型數(shù)據(jù)庫(如 SQL)靈活的數(shù)據(jù)處理功能。復(fù)雜精細的索引功能,以便便捷地完成重塑、切片和切塊、聚合及選取數(shù)據(jù)子集等操作。了解Python數(shù)據(jù)分析常用類庫4Pandas數(shù)據(jù)分析核心庫第19頁,共365頁。Python的2D繪圖庫,非常適合創(chuàng)建出版物上用的圖表。操作比較容易,只需幾行代碼即可生

13、成直方圖、功率譜圖、條形圖、錯誤圖和散點圖等圖形。提供了pylab的模塊,其中包括了NumPy和pyplot中許多常用的函數(shù),方便用戶快速進行計算和繪圖。交互式的數(shù)據(jù)繪圖環(huán)境,繪制的圖表也是交互式的。了解Python數(shù)據(jù)分析常用類庫5Matplotlib繪制數(shù)據(jù)圖表的 Python 庫第20頁,共365頁。簡單有效,可以供用戶在各種環(huán)境下重復(fù)使用。封裝了一些常用的算法方法?;灸K主要有數(shù)據(jù)預(yù)處理、模型選擇、分類、聚類、數(shù)據(jù)降維和回歸 6 個,在數(shù)據(jù)量不大的情況下,scikit-learn可以解決大部分問題。了解Python數(shù)據(jù)分析常用類庫6scikit-learn數(shù)據(jù)挖掘和數(shù)據(jù)分析工具第21

14、頁,共365頁。提供高級的代碼編輯、交互測試和調(diào)試等特性。包含數(shù)值計算環(huán)境??捎糜趯⒄{(diào)試控制臺直接集成到圖形用戶界面的布局中。模仿MATLAB的“工作空間”,可以很方便地觀察和修改數(shù)組的值。了解Python數(shù)據(jù)分析常用類庫7Spyder交互式 Python 語言開發(fā)環(huán)境第22頁,共365頁。掌握 Jupyter Notebook 常用功能目錄41認識數(shù)據(jù)分析安裝 Python 的 Anaconda 發(fā)行版3熟悉Python數(shù)據(jù)分析的工具2第23頁,共365頁。預(yù)裝了大量常用 Packages。完全開源和免費。額外的加速和優(yōu)化是收費的,但對于學(xué)術(shù)用途,可以申請免費的 License。對全平臺和幾

15、乎所有Python版本支持。了解 Python 的 Anaconda 發(fā)行版Anaconda第24頁,共365頁。安裝包“next”“I agree”“All Users(requires admin privileges)”選擇安裝路徑“Install”“finish”。在 Windows 系統(tǒng)上安裝 Anaconda安裝流程第25頁,共365頁。目錄1認識數(shù)據(jù)分析熟悉Python數(shù)據(jù)分析的工具2安裝 Python 的 Anaconda 發(fā)行版3掌握 Jupyter Notebook 常用功能4第26頁,共365頁。掌握 Jupyter Notebook 的基本功能打開并新建一個Notebo

16、ok打開 Jupyter Notebook“Text File”為純文本型“Folder” 為文件夾“Python 3” 表示 Python 運行腳本第27頁,共365頁。選擇”Python 3”選項,進入 Python 腳本編輯界面,Notebook 文檔由一系列單元(Cell)構(gòu)成,主要有兩種形式的單元。掌握 Jupyter Notebook 的基本功能Jupyter Notebook 的界面及其構(gòu)成代碼單元。這里是讀者編寫代碼的地方。Markdown 單元。在這里對文本進行編輯。第28頁,共365頁。編輯模式:用于編輯文本和代碼。掌握 Jupyter Notebook 的基本功能編輯界面

17、命令模式:用于執(zhí)行鍵盤輸入的快捷命令。第29頁,共365頁?!癊sc”鍵:進入命令模式“Y” 鍵:切換到代碼單元“M”鍵:切換到 Markdown 單元“B”鍵:在本單元的下方增加一單元“H”鍵:查看所有快捷命令“ShiftEnter”組合鍵:運行代碼掌握 Jupyter Notebook 的基本功能快捷鍵第30頁,共365頁。Markdown 是一種可以使用普通文本編輯器編寫的標記語言,通過簡單的標記語法,它可以使普通文本內(nèi)容具有一定的格式。標題:標題是標明文章和作品等內(nèi)容的簡短語句。一個“#”字符代表一級標題,以此類推。掌握 Jupyter Notebook 的高級功能1Markdown第

18、31頁,共365頁。列表:列表是一種由數(shù)據(jù)項構(gòu)成的有限序列,即按照一定的線性順序排列而成的數(shù)據(jù)項的集合。對于無序列表,使用星號、加號或者減號作為列表標記對于有序列表,則是使用數(shù)字“,”“(一個空格)”。掌握 Jupyter Notebook 的高級功能1Markdown第32頁,共365頁。加粗斜體:前后有兩個星號或下劃線表示加粗,前后有 3 個星號或下劃線表示斜體。掌握 Jupyter Notebook 的高級功能1Markdown第33頁,共365頁。表格:代碼的第一行表示表頭,第二行分隔表頭和主體部分,從第三行開始,每一行代表一個表格行;列與列之間用符號“”隔開,表格每一行的兩邊也要有符

19、號“”。掌握 Jupyter Notebook 的高級功能1Markdown第34頁,共365頁。數(shù)學(xué)公式編輯:LaTeX 是寫科研論文的必備工具, Markdown 單元中也可以使用 LaTeX 來插入數(shù)學(xué)公式。在文本行中插入數(shù)學(xué)公式,應(yīng)在公式前后分別加上一個“$” 符號如果要插入一個數(shù)學(xué)區(qū)塊,則在公式前后分別加上兩個“$”符號。掌握 Jupyter Notebook 的高級功能1Markdown第35頁,共365頁。Notebook 還有一個強大的特性,就是導(dǎo)出功能??梢詫?Notebook 導(dǎo)出為多種格式,如HTML、Markdown、reST、PDF(通過 LaTeX)等格式。導(dǎo)出功能

20、可通過選擇“File”“Download as”級聯(lián)菜單中的命令實現(xiàn)。掌握 Jupyter Notebook 的高級功能2導(dǎo)出功能第36頁,共365頁。第37頁,共365頁。NumPy 數(shù)值計算基礎(chǔ)2018/1/20第38頁,共365頁。1掌握 NumPy 矩陣與通用函數(shù)利用 NumPy 進行統(tǒng)計分析目錄掌握 NumPy 數(shù)組對象 ndarray23第39頁,共365頁。屬性說明ndim返回 int。表示數(shù)組的維數(shù)shape返回 tuple。表示數(shù)組的尺寸,對于 n 行 m 列的矩陣,形狀為(n,m)size返回 int。表示數(shù)組的元素總數(shù),等于數(shù)組形狀的乘積dtype返回 data-type

21、。描述數(shù)組中元素的類型itemsize返回 int。表示數(shù)組的每個元素的大?。ㄒ宰止?jié)為單位)。創(chuàng)建數(shù)組對象1數(shù)組屬性:ndarray(數(shù)組)是存儲單一數(shù)據(jù)類型的多維數(shù)組。第40頁,共365頁。參數(shù)名稱說明object接收array。表示想要創(chuàng)建的數(shù)組。無默認。dtype接收data-type。表示數(shù)組所需的數(shù)據(jù)類型。如果未給定,則選擇保存對象所需的最小類型。默認為None。ndmin接收int。指定生成數(shù)組應(yīng)該具有的最小維數(shù)。默認為None。創(chuàng)建數(shù)組對象2數(shù)組創(chuàng)建numpy.array(object, dtype=None, copy=True, order=K,subok=False, nd

22、min=0)第41頁,共365頁。In1:import numpy as np #導(dǎo)入NumPy庫arr1 = np.array(1, 2, 3, 4) #創(chuàng)建一維數(shù)組print(創(chuàng)建的數(shù)組為:,arr1)Out1:創(chuàng)建的數(shù)組為: 1 2 3 4In2:arr2 = np.array(1, 2, 3, 4,4, 5, 6, 7, 7, 8, 9, 10) #創(chuàng)建二維數(shù)組print(創(chuàng)建的數(shù)組為:n,arr2)Out2:創(chuàng)建的數(shù)組為: 1 2 3 4 4 5 6 7 7 8 9 10In3:print(數(shù)組維度為:,arr2.shape) #查看數(shù)組結(jié)構(gòu)Out3:數(shù)組維度為: (3, 4)創(chuàng)建數(shù)

23、組對象創(chuàng)建數(shù)組并查看數(shù)組屬性In4:print(數(shù)組維度為:,arr2.dtype) #查看數(shù)組類型Out4:數(shù)組維度為: int32In5:print(數(shù)組元素個數(shù)為:,arr2.size) #查看數(shù)組元素個數(shù)Out5:數(shù)組元素個數(shù)為: 12In6:print(數(shù)組每個元素大小為:,arr2.itemsize) #查看數(shù)組每個元素大小Out6:數(shù)組每個元素大小為: 4第42頁,共365頁。創(chuàng)建數(shù)組對象重新設(shè)置數(shù)組的 shape 屬性In7:arr2.shape = 4,3 #重新設(shè)置 shapeprint(重新設(shè)置 shape 后的 arr2 為:,arr2)Out7:重新設(shè)置shape維度

24、后的arr2為: 1 2 3 4 4 5 6 7 7 8 9 10使用 arange 函數(shù)創(chuàng)建數(shù)組In8:print(使用 arange 函數(shù)創(chuàng)建的數(shù)組為:n,np.arange(0,1,0.1)Out8:使用arange函數(shù)創(chuàng)建的數(shù)組為: 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9第43頁,共365頁。創(chuàng)建數(shù)組對象使用 linspace 函數(shù)創(chuàng)建數(shù)組In9:print(使用 linspace 函數(shù)創(chuàng)建的數(shù)組為:,np.linspace(0, 1, 12)Out9:使用linspace函數(shù)創(chuàng)建的數(shù)組為: 0. 0.09090909 1. 使用 logspace

25、 函數(shù)創(chuàng)建等比數(shù)列In10:print(使用logspace函數(shù)創(chuàng)建的數(shù)組為:,np.logspace(0, 2, 20)Out10:使用logspace函數(shù)創(chuàng)建的數(shù)組為: 1. 1.27427499 1.62377674 ., 61.58482111 78.47599704 100. 第44頁,共365頁。創(chuàng)建數(shù)組對象使用zeros函數(shù)創(chuàng)建數(shù)組In11:print(使用zeros函數(shù)創(chuàng)建的數(shù)組為:,np.zeros(2,3)Out11:使用zeros函數(shù)創(chuàng)建的數(shù)組為: 0. 0. 0. 0. 0. 0.使用eye函數(shù)創(chuàng)建數(shù)組In12:print(使用eye函數(shù)創(chuàng)建的數(shù)組為:,np.eye(3

26、)Out12:使用eye函數(shù)創(chuàng)建的數(shù)組為: 1. 0. 0. 0. 1. 0. 0. 0. 1.第45頁,共365頁。創(chuàng)建數(shù)組對象使用diag函數(shù)創(chuàng)建數(shù)組In13:print(使用diag函數(shù)創(chuàng)建的數(shù)組為:,np.diag(1,2,3,4)Out13:使用diag函數(shù)創(chuàng)建的數(shù)組為: 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0 4使用ones函數(shù)創(chuàng)建數(shù)組In14:print(使用ones函數(shù)創(chuàng)建的數(shù)組為:,np.ones(5,3)Out14:使用ones函數(shù)創(chuàng)建的數(shù)組為: 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.第46頁,共365頁

27、。NumPy基本數(shù)據(jù)類型與其取值范圍(只展示一部分)創(chuàng)建數(shù)組對象3數(shù)組數(shù)據(jù)類型類型描述bool用一位存儲的布爾類型(值為TRUE或FALSE)inti由所在平臺決定其精度的整數(shù)(一般為int32或int64)int8整數(shù),范圍為128至127int16整數(shù),范圍為32768至32767int32第47頁,共365頁。創(chuàng)建數(shù)組對象數(shù)組數(shù)據(jù)類型轉(zhuǎn)換In15:print(轉(zhuǎn)換結(jié)果為:,np.float64(42) #整型轉(zhuǎn)換為浮點型Out15:轉(zhuǎn)換結(jié)果為: 42.0In16:print(轉(zhuǎn)換結(jié)果為:,8(42.0) #浮點型轉(zhuǎn)換為整型Out16:轉(zhuǎn)換結(jié)果為: 42In17:print(轉(zhuǎn)

28、換結(jié)果為:,np.bool(42) #整型轉(zhuǎn)換為布爾型Out17:轉(zhuǎn)換結(jié)果為: TrueIn18:print(轉(zhuǎn)換結(jié)果為:,np.bool(0) #整型轉(zhuǎn)換為布爾型Out18:轉(zhuǎn)換結(jié)果為: FalseIn19:print(轉(zhuǎn)換結(jié)果為:,np.float(True) #布爾型轉(zhuǎn)換為浮點型Out19:轉(zhuǎn)換結(jié)果為: 1.0In20:print(轉(zhuǎn)換結(jié)果為:,np.float(False) #布爾型轉(zhuǎn)換為浮點型Out20:轉(zhuǎn)換結(jié)果為: 0.0第48頁,共365頁。創(chuàng)建數(shù)組對象創(chuàng)建一個存儲餐飲企業(yè)庫存信息的數(shù)據(jù)類型。其中,用一個長度為40個字符的字符串來記錄商品的名稱,用一個64位的整數(shù)來記錄商品的庫存

29、數(shù)量,最后用一個64位的單精度浮點數(shù)來記錄商品的價格,具體步驟如下。In21:df = np.dtype(name, np.str_, 40), (numitems, 64), (price,np.float64)print(數(shù)據(jù)類型為:,df)Out21:數(shù)據(jù)類型為: (name, U40), (numitems, i8), (price, f8)創(chuàng)建數(shù)據(jù)類型第49頁,共365頁。創(chuàng)建數(shù)組對象查看數(shù)據(jù)類型,可以直接查看或者使用numpy.dtype函數(shù)查看。In22:print(數(shù)據(jù)類型為:,dfname)Out22:數(shù)據(jù)類型為: U40In23:print(數(shù)據(jù)類型為:,np.

30、dtype(dfname)Out23:數(shù)據(jù)類型為: 、=、=、!=。比較運算返回的結(jié)果是一個布爾數(shù)組,每個元素為每個數(shù)組對應(yīng)元素的比較結(jié)果。邏輯運算:np.any函數(shù)表示邏輯“or”,np.all函數(shù)表示邏輯“and”。運算結(jié)果返回布爾值。認識ufunc函數(shù)全稱通用函數(shù)(universal function),是一種能夠?qū)?shù)組中所有元素進行操作的函數(shù)。第68頁,共365頁。廣播(broadcasting)是指不同形狀的數(shù)組之間執(zhí)行算術(shù)運算的方式。需要遵循4個原則。讓所有輸入數(shù)組都向其中shape最長的數(shù)組看齊,shape中不足的部分都通過在前面加1補齊。輸出數(shù)組的shape是輸入數(shù)組shape

31、的各個軸上的最大值。如果輸入數(shù)組的某個軸和輸出數(shù)組的對應(yīng)軸的長度相同或者其長度為1時,這個數(shù)組能夠用來計算,否則出錯。當(dāng)輸入數(shù)組的某個軸的長度為1時,沿著此軸運算時都用此軸上的第一組值。認識ufunc函數(shù)ufunc函數(shù)的廣播機制第69頁,共365頁。認識ufunc函數(shù)ufunc函數(shù)的廣播機制第70頁,共365頁。認識ufunc函數(shù)ufunc函數(shù)的廣播機制第71頁,共365頁。1掌握 NumPy 矩陣與通用函數(shù)利用 NumPy 進行統(tǒng)計分析目錄掌握 NumPy 數(shù)組對象 ndarray23第72頁,共365頁。save函數(shù)是以二進制的格式保存數(shù)據(jù)。 np.save(./tmp/save_arr,

32、arr)load函數(shù)是從二進制的文件中讀取數(shù)據(jù)。 np.load(./tmp/save_arr.npy) savez函數(shù)可以將多個數(shù)組保存到一個文件中。 np.savez(./tmp/savez_arr,arr1,arr2)存儲時可以省略擴展名,但讀取時不能省略擴展名。讀寫文件NumPy文件讀寫主要有二進制的文件讀寫和文件列表形式的數(shù)據(jù)讀寫兩種形式第73頁,共365頁。savetxt函數(shù)是將數(shù)組寫到某種分隔符隔開的文本文件中。 np.savetxt(./tmp/arr.txt, arr, fmt=%d, delimiter=,)loadtxt函數(shù)執(zhí)行的是把文件加載到一個二維數(shù)組中。 np.lo

33、adtxt(./tmp/arr.txt,delimiter=,)genfromtxt函數(shù)面向的是結(jié)構(gòu)化數(shù)組和缺失數(shù)據(jù)。 np.genfromtxt(./tmp/arr.txt, delimiter = ,)讀寫文件讀取文本格式的數(shù)據(jù)第74頁,共365頁。sort函數(shù)是最常用的排序方法。 arr.sort()sort函數(shù)也可以指定一個axis參數(shù),使得sort函數(shù)可以沿著指定軸對數(shù)據(jù)集進行排序。axis=1為沿橫軸排序; axis=0為沿縱軸排序。使用數(shù)組進行簡單統(tǒng)計分析直接排序第75頁,共365頁。argsort函數(shù)返回值為重新排序值的下標。 arr.argsort()lexsort函數(shù)返回值

34、是按照最后一個傳入數(shù)據(jù)排序的。 np.lexsort(a,b,c)使用數(shù)組進行簡單統(tǒng)計分析間接排序第76頁,共365頁。通過unique函數(shù)可以找出數(shù)組中的唯一值并返回已排序的結(jié)果。tile函數(shù)主要有兩個參數(shù),參數(shù)“A”指定重復(fù)的數(shù)組,參數(shù)“reps”指定重復(fù)的次數(shù)。 np.tile(A,reps)repeat函數(shù)主要有三個參數(shù),參數(shù)“a”是需要重復(fù)的數(shù)組元素,參數(shù)“repeats”是重復(fù)次數(shù),參數(shù)“axis”指定沿著哪個軸進行重復(fù),axis = 0表示按行進行元素重復(fù);axis = 1表示按列進行元素重復(fù)。 numpy.repeat(a, repeats, axis=None)這兩個函數(shù)的主

35、要區(qū)別在于,tile函數(shù)是對數(shù)組進行重復(fù)操作,repeat函數(shù)是對數(shù)組中的每個元素進行重復(fù)操作。使用數(shù)組進行簡單統(tǒng)計分析去重與重復(fù)數(shù)據(jù)第77頁,共365頁。函數(shù)說明sum計算數(shù)組的和mean計算數(shù)組均值std計算數(shù)組標準差var計算數(shù)組方差min計算數(shù)組最小值max計算數(shù)組最大值argmin返回數(shù)組最小元素的索引argmax返回數(shù)組最小元素的索引cumsum計算所有元素的累計和cumprod計算所有元素的累計積常用的統(tǒng)計函數(shù)當(dāng)axis=0時,表示沿著縱軸計算。當(dāng)axis=1時,表示沿著橫軸計算。默認時計算一個總值。第78頁,共365頁。讀取iris數(shù)據(jù)集中的花萼長度數(shù)據(jù)(已保存為csv格式),

36、并對其進行排序、去重,并求出和、累積和、均值、標準差、方差、最小值、最大值任務(wù)實現(xiàn)第79頁,共365頁。第80頁,共365頁。Matplotlib數(shù)據(jù)可視化基礎(chǔ)2022/8/20第81頁,共365頁。1分析特征間的關(guān)系目錄了解繪圖基礎(chǔ)語法與常用參數(shù)2分析特征內(nèi)部數(shù)據(jù)分布與分散狀況3小結(jié)4第82頁,共365頁。掌握pyplot基礎(chǔ)語法基本繪圖流程第83頁,共365頁。第一部分主要作用是構(gòu)建出一張空白的畫布,并可以選擇是否將整個畫布劃分為多個部分,方便在同一幅圖上繪制多個圖形的情況。最簡單的繪圖可以省略第一部分,而后直接在默認的畫布上進行圖形繪制。掌握pyplot基礎(chǔ)語法1.創(chuàng)建畫布與創(chuàng)建子圖函數(shù)

37、名稱函數(shù)作用plt.figure創(chuàng)建一個空白畫布,可以指定畫布大小,像素。figure.add_subplot創(chuàng)建并選中子圖,可以指定子圖的行數(shù),列數(shù),與選中圖片編號。第84頁,共365頁。第二部分是繪圖的主體部分。其中添加標題,坐標軸名稱,繪制圖形等步驟是并列的,沒有先后順序,可以先繪制圖形,也可以先添加各類標簽。但是添加圖例一定要在繪制圖形之后。掌握pyplot基礎(chǔ)語法2.添加畫布內(nèi)容函數(shù)名稱函數(shù)作用plt.title在當(dāng)前圖形中添加標題,可以指定標題的名稱、位置、顏色、字體大小等參數(shù)。plt.xlabel在當(dāng)前圖形中添加x軸名稱,可以指定位置、顏色、字體大小等參數(shù)。plt.ylabel在

38、當(dāng)前圖形中添加y軸名稱,可以指定位置、顏色、字體大小等參數(shù)。plt.xlim指定當(dāng)前圖形x軸的范圍,只能確定一個數(shù)值區(qū)間,而無法使用字符串標識。plt.ylim指定當(dāng)前圖形y軸的范圍,只能確定一個數(shù)值區(qū)間,而無法使用字符串標識。plt.xticks指定x軸刻度的數(shù)目與取值。plt.yticks指定y軸刻度的數(shù)目與取值。plt.legend指定當(dāng)前圖形的圖例,可以指定圖例的大小、位置、標簽。第85頁,共365頁。第三部分主要用于保存和顯示圖形。掌握pyplot基礎(chǔ)語法3.存與展示圖形函數(shù)名稱函數(shù)作用plt.savafig保存繪制的圖片,可以指定圖片的分辨率、邊緣的顏色等參數(shù)。plt.show在本

39、機顯示圖形。第86頁,共365頁。pyplot使用rc配置文件來自定義圖形的各種默認屬性,被稱為rc配置或rc參數(shù)。在pyplot中幾乎所有的默認屬性都是可以控制的,例如視圖窗口大小以及每英寸點數(shù)、線條寬度、顏色和樣式、坐標軸、坐標和網(wǎng)格屬性、文本、字體等。設(shè)置pyplot的動態(tài)rc參數(shù)第87頁,共365頁。設(shè)置pyplot的動態(tài)rc參數(shù)線條的常用rc參數(shù)名稱、解釋與取值rc參數(shù)名稱解釋取值lines.linewidth線條寬度取0-10之間的數(shù)值,默認為1.5。lines.linestyle線條樣式可取“-”“-”“-.”“:”四種。默認為“-”。lines.marker線條上點的形狀可取“

40、o”“D”“h”“.”“,”“S”等20種,默認為None。lines.markersize點的大小取0-10之間的數(shù)值,默認為1。第88頁,共365頁。設(shè)置pyplot的動態(tài)rc參數(shù)常用線條類型解釋linestyle取值意義linestyle取值意義-實線-.點線-長虛線:短虛線第89頁,共365頁。marker取值意義marker取值意義o圓圈.點D菱形s正方形h六邊形1*星號H六邊形2d小菱形-水平線v一角朝下的三角形8八邊形一角朝右的三角形,像素一角朝上的三角形+加號豎線None無xX設(shè)置pyplot的動態(tài)rc參數(shù)線條標記解釋第90頁,共365頁。由于默認的pyplot字體并不支持中文

41、字符的顯示,因此需要通過設(shè)置font.sans-serif參數(shù)改變繪圖時的字體,使得圖形可以正常顯示中文。同時,由于更改字體后,會導(dǎo)致坐標軸中的部分字符無法顯示,因此需要同時更改axes.unicode_minus參數(shù)。除了設(shè)置線條和字體的rc參數(shù)外,還有設(shè)置文本、箱線圖、坐標軸、刻度、圖例、標記、圖片、圖像保存等rc參數(shù)。具體參數(shù)與取值可以參考官方文檔。設(shè)置pyplot的動態(tài)rc參數(shù)注意事項第91頁,共365頁。1分析特征間的關(guān)系目錄了解繪圖基礎(chǔ)語法與常用參數(shù)2分析特征內(nèi)部數(shù)據(jù)分布與分散狀況3小結(jié)4第92頁,共365頁。散點圖(scatter diagram)又稱為散點分布圖,是以一個特征為

42、橫坐標,另一個特征為縱坐標,利用坐標點(散點)的分布形態(tài)反映特征間的統(tǒng)計關(guān)系的一種圖形。值是由點在圖表中的位置表示,類別是由圖表中的不同標記表示,通常用于比較跨類別的數(shù)據(jù)。繪制散點圖散點圖第93頁,共365頁。matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, alpha=None, *kwargs)常用參數(shù)及說明如下表所示。繪制散點圖scatter函數(shù)參數(shù)名稱說明x,y接收array。表示x軸和y軸對應(yīng)的數(shù)據(jù)。無默認。s接收數(shù)值或者一維的array。指定點的大小,若傳入一維array則表示每個點的大小。默認為None。c接

43、收顏色或者一維的array。指定點的顏色,若傳入一維array則表示每個點的顏色。默認為Nonemarker接收特定string。表示繪制的點的類型。默認為None。alpha接收0-1的小數(shù)。表示點的透明度。默認為None。第94頁,共365頁。折線圖(line chart)是一種將數(shù)據(jù)點按照順序連接起來的圖形。可以看作是將散點圖,按照x軸坐標順序連接起來的圖形。折線圖的主要功能是查看因變量y隨著自變量x改變的趨勢,最適合用于顯示隨時間(根據(jù)常用比例設(shè)置)而變化的連續(xù)數(shù)據(jù)。同時還可以看出數(shù)量的差異,增長趨勢的變化。繪制折線圖折線圖第95頁,共365頁。matplotlib.pyplot.pl

44、ot(*args, *kwargs) plot函數(shù)在官方文檔的語法中只要求填入不定長參數(shù),實際可以填入的主要參數(shù)主要如下。繪制折線圖plot函數(shù)參數(shù)名稱說明x,y接收array。表示x軸和y軸對應(yīng)的數(shù)據(jù)。無默認。color接收特定string。指定線條的顏色。默認為None。linestyle接收特定string。指定線條類型。默認為“-”。marker接收特定string。表示繪制的點的類型。默認為None。alpha接收0-1的小數(shù)。表示點的透明度。默認為None。第96頁,共365頁。color參數(shù)的8種常用顏色的縮寫。繪制折線圖plot函數(shù)顏色縮寫代表的顏色顏色縮寫代表的顏色b藍色m品

45、紅g綠色y黃色r紅色k黑色c青色w白色第97頁,共365頁。國民生產(chǎn)總值數(shù)據(jù)總共有三大產(chǎn)業(yè)的國民生產(chǎn)總值,以及農(nóng)業(yè)、工業(yè)、建筑、批發(fā)、交通、餐飲、金融、房地產(chǎn)和其他行業(yè)各個季度的增加值。通過散點圖分析三大行業(yè)的國民生產(chǎn)總值可以發(fā)現(xiàn)我國產(chǎn)業(yè)結(jié)構(gòu)。通過比較各行業(yè)間季度的增加值則可以發(fā)現(xiàn)國民經(jīng)濟的主要貢獻行業(yè)。任務(wù)實現(xiàn)1.繪制2000-2017各產(chǎn)業(yè)與行業(yè)的國民生產(chǎn)總值散點圖第98頁,共365頁。通過繪制2000-2017各產(chǎn)業(yè)與行業(yè)的國民生產(chǎn)總值折線圖,分別能夠發(fā)現(xiàn)我國經(jīng)濟各產(chǎn)業(yè)與各行業(yè)增長趨勢。任務(wù)實現(xiàn)2.繪制2000-2017各產(chǎn)業(yè)與行業(yè)的國民生產(chǎn)總值折線圖第99頁,共365頁。1分析特征間的

46、關(guān)系目錄了解繪圖基礎(chǔ)語法與常用參數(shù)2分析特征內(nèi)部數(shù)據(jù)分布與分散狀況3小結(jié)4第100頁,共365頁。直方圖(Histogram)又稱質(zhì)量分布圖,是統(tǒng)計報告圖的一種,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況,一般用橫軸表示數(shù)據(jù)所屬類別,縱軸表示數(shù)量或者占比。用直方圖可以比較直觀地看出產(chǎn)品質(zhì)量特性的分布狀態(tài),便于判斷其總體質(zhì)量分布情況。直方圖可以發(fā)現(xiàn)分布表無法發(fā)現(xiàn)的數(shù)據(jù)模式、樣本的頻率分布和總體的分布。繪制直方圖直方圖第101頁,共365頁。matplotlib.pyplot.bar(left,height,width = 0.8,bottom = None,hold = None,dat

47、a = None,* kwargs )常用參數(shù)及說明如下表所示。繪制直方圖bar函數(shù)參數(shù)名稱說明left接收array。表示x軸數(shù)據(jù)。無默認。height接收array。表示x軸所代表數(shù)據(jù)的數(shù)量。無默認。width接收0-1之間的float。指定直方圖寬度。默認為0.8。color接收特定string或者包含顏色字符串的array。表示直方圖顏色。默認為None。第102頁,共365頁。餅圖(Pie Graph)是將各項的大小與各項總和的比例顯示在一張“餅”中,以“餅”的大小來確定每一項的占比。餅圖可以比較清楚地反映出部分與部分、部分與整體之間的比例關(guān)系,易于顯示每組數(shù)據(jù)相對于總數(shù)的大小,而且

48、顯現(xiàn)方式直觀。繪制餅圖餅圖第103頁,共365頁。matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None, radius=None, )常用參數(shù)及說明如下表所示。繪制餅圖pie函數(shù)參數(shù)名稱說明參數(shù)名稱說明x接收array。表示用于繪制撇的數(shù)據(jù)。無默認。autopct接收特定string。指定數(shù)值的顯示方式。默認為None。explode接收array。表示指定項離

49、餅圖圓心為n個半徑。默認為None。pctdistance接收float。指定每一項的比例和距離餅圖圓心n個半徑。默認為0.6。labels接收array。指定每一項的名稱。默認為None。labeldistance接收float。指定每一項的名稱和距離餅圖圓心多少個半徑。默認為1.1。color接收特定string或者包含顏色字符串的array。表示餅圖顏色。默認為None。radius接收float。表示餅圖的半徑。默認為1。第104頁,共365頁。箱線圖(boxplot)也稱箱須圖,其繪制需使用常用的統(tǒng)計量,能提供有關(guān)數(shù)據(jù)位置和分散情況的關(guān)鍵信息,尤其在比較不同特征時,更可表現(xiàn)其分散程度

50、差異。箱線圖利用數(shù)據(jù)中的五個統(tǒng)計量(最小值、下四分位數(shù)、中位數(shù)、上四分位數(shù)和最大值)來描述數(shù)據(jù),它也可以粗略地看出數(shù)據(jù)是否具有對稱性、分布的分散程度等信息,特別可以用于對幾個樣本的比較。繪制箱線圖箱線圖第105頁,共365頁。matplotlib.pyplot.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, patch_artist=None,meanline=None, labels=None, )常用參數(shù)及說明如下表所示。繪制箱線圖boxplot函數(shù)參數(shù)名稱說明參數(shù)名稱說

51、明x接收array。表示用于繪制箱線圖的數(shù)據(jù)。無默認。positions接收array。表示圖形位置。默認為None。notch接收boolean。表示中間箱體是否有缺口。默認為None。widths接收scalar或者array。表示每個箱體的寬度。默認為None。sym接收特定sting。指定異常點形狀。默認為None。labels接收array。指定每一個箱線圖的標簽。默認為None。vert接收boolean。表示圖形是橫向縱向或者橫向。默認為None。meanline接收boolean。表示是否顯示均值線。默認為False。第106頁,共365頁。通過直方圖分析2000年第一季度和2

52、017年第一季度之間的三大產(chǎn)業(yè)的國民生產(chǎn)總值,可以發(fā)現(xiàn)各產(chǎn)業(yè)絕對數(shù)值之間的關(guān)系,并通過對比發(fā)現(xiàn)產(chǎn)業(yè)結(jié)構(gòu)的變化。同理可以得出行業(yè)間的絕對數(shù)值關(guān)系以及17年來行業(yè)發(fā)展狀況。任務(wù)實現(xiàn)1.繪制國民生產(chǎn)總值構(gòu)成分布直方圖第107頁,共365頁。通過分析2000年與2017年不同的產(chǎn)業(yè)和行業(yè)在國民生產(chǎn)總值中的占比,可以發(fā)現(xiàn)我國產(chǎn)業(yè)結(jié)構(gòu)變化和行業(yè)變遷。任務(wù)實現(xiàn)2.繪制國民生產(chǎn)總值構(gòu)成分布餅圖第108頁,共365頁。通過分析2000年至2017年不同的產(chǎn)業(yè)和行業(yè)在國民生產(chǎn)總值中的分散情況,可以發(fā)現(xiàn)整體分散情況,從而判斷整體增速是否加快。任務(wù)實現(xiàn)3.繪制國民生產(chǎn)總值分散情況箱線圖第109頁,共365頁。1分析特

53、征間的關(guān)系目錄了解繪圖基礎(chǔ)語法與常用參數(shù)2分析特征內(nèi)部數(shù)據(jù)分布與分散狀況3小結(jié)4第110頁,共365頁。本章以2000至2017年各季度國民生產(chǎn)總值數(shù)據(jù)為例,介紹了pyplot繪圖的基本語法,常用參數(shù)。介紹了分析特征間相關(guān)關(guān)系的散點圖。分析特征間趨勢關(guān)系的折線圖。分析特征內(nèi)部數(shù)據(jù)分布的直方圖和餅狀圖。以及分析特征內(nèi)部數(shù)據(jù)分散情況的箱線圖。為讀者后續(xù)深入學(xué)習(xí)Matplotlib數(shù)據(jù)可視化打下了深厚的基礎(chǔ)。小結(jié)第111頁,共365頁。第112頁,共365頁。pandas統(tǒng)計分析基礎(chǔ)2022/8/20第113頁,共365頁。1掌握DataFrame的常用操作目錄讀寫不同數(shù)據(jù)源的數(shù)據(jù)2轉(zhuǎn)換與處理時間序

54、列數(shù)據(jù)3第114頁,共365頁。pandas提供了讀取與存儲關(guān)系型數(shù)據(jù)庫數(shù)據(jù)的函數(shù)與方法。除了pandas庫外,還需要使用SQLAlchemy庫建立對應(yīng)的數(shù)據(jù)庫連接。SQLAlchemy配合相應(yīng)數(shù)據(jù)庫的Python連接工具(例如MySQL數(shù)據(jù)庫需要安裝mysqlclient或者pymysql庫),使用create_engine函數(shù),建立一個數(shù)據(jù)庫連接。creat_engine中填入的是一個連接字符串。在使用Python的SQLAlchemy時,MySQL和Oracle數(shù)據(jù)庫連接字符串的格式如下 數(shù)據(jù)庫產(chǎn)品名+連接工具名:/用戶名:密碼數(shù)據(jù)庫IP地址:數(shù)據(jù)庫端口號/數(shù)據(jù)庫名稱?charset =

55、 數(shù)據(jù)庫數(shù)據(jù)編碼讀寫數(shù)據(jù)庫數(shù)據(jù)1.數(shù)據(jù)庫數(shù)據(jù)讀取第115頁,共365頁。read_sql_table只能夠讀取數(shù)據(jù)庫的某一個表格,不能實現(xiàn)查詢的操作。 pandas.read_sql_table(table_name, con, schema=None, index_col=None, coerce_float=True, columns=None)read_sql_query則只能實現(xiàn)查詢操作,不能直接讀取數(shù)據(jù)庫中的某個表。 pandas.read_sql_query(sql, con, index_col=None, coerce_float=True)read_sql是兩者的綜合,既能夠

56、讀取數(shù)據(jù)庫中的某一個表,也能夠?qū)崿F(xiàn)查詢操作。 pandas.read_sql(sql, con, index_col=None, coerce_float=True, columns=None)讀寫數(shù)據(jù)庫數(shù)據(jù)1.數(shù)據(jù)庫數(shù)據(jù)讀取第116頁,共365頁。參數(shù)名稱說明sql or table_name接收string。表示讀取的數(shù)據(jù)的表名或者sql語句。無默認。con接收數(shù)據(jù)庫連接。表示數(shù)據(jù)庫連接信息。無默認index_col接收int,sequence或者False。表示設(shè)定的列作為行名,如果是一個數(shù)列則是多重索引。默認為None。coerce_float接收boolean。將數(shù)據(jù)庫中的decim

57、al類型的數(shù)據(jù)轉(zhuǎn)換為pandas中的float64類型的數(shù)據(jù)。默認為True。columns接收list。表示讀取數(shù)據(jù)的列名。默認為None。讀寫數(shù)據(jù)庫數(shù)據(jù)1.數(shù)據(jù)庫數(shù)據(jù)讀取pandas三個數(shù)據(jù)庫數(shù)據(jù)讀取函數(shù)的參數(shù)幾乎完全一致,唯一的區(qū)別在于傳入的是語句還是表名。第117頁,共365頁。數(shù)據(jù)庫數(shù)據(jù)讀取有三個函數(shù),但數(shù)據(jù)存儲則只有一個to_sql方法。DataFrame.to_sql(name, con, schema=None, if_exists=fail, index=True, index_label=None, dtype=None)讀寫數(shù)據(jù)庫數(shù)據(jù)2.數(shù)據(jù)庫數(shù)據(jù)存儲參數(shù)名稱說明name

58、接收string。代表數(shù)據(jù)庫表名。無默認。con接收數(shù)據(jù)庫連接。無默認。if_exists接收fail,replace,append。fail表示如果表名存在則不執(zhí)行寫入操作;replace表示如果存在,將原數(shù)據(jù)庫表刪除,再重新創(chuàng)建;append則表示在原數(shù)據(jù)庫表的基礎(chǔ)上追加數(shù)據(jù)。默認為fail。index接收boolean。表示是否將行索引作為數(shù)據(jù)傳入數(shù)據(jù)庫。默認True。index_label接收string或者sequence。代表是否引用索引名稱,如果index參數(shù)為True此參數(shù)為None則使用默認名稱。如果為多重索引必須使用sequence形式。默認為None。dtype接收dic

59、t。代表寫入的數(shù)據(jù)類型(列名為key,數(shù)據(jù)格式為values)。默認為None。第118頁,共365頁。文本文件是一種由若干行字符構(gòu)成的計算機文件,它是一種典型的順序文件。csv是一種逗號分隔的文件格式,因為其分隔符不一定是逗號,又被稱為字符分隔文件,文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本)。讀寫文本文件1.文本文件讀取第119頁,共365頁。使用read_table來讀取文本文件。pandas.read_table(filepath_or_buffer, sep=t, header=infer, names=None, index_col=None, dtype=None, engine=

60、None, nrows=None)使用read_csv函數(shù)來讀取csv文件。pandas.read_csv(filepath_or_buffer, sep=t, header=infer, names=None, index_col=None, dtype=None, engine=None, nrows=None)讀寫文本文件1.文本文件讀取第120頁,共365頁。read_table和read_csv常用參數(shù)及其說明。讀寫文本文件1.文本文件讀取參數(shù)名稱說明filepath接收string。代表文件路徑。無默認。sep接收string。代表分隔符。read_csv默認為“,”,read_t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論