數(shù)據(jù)分析及可視化 課件 第0章-課前準(zhǔn)備、第1章-數(shù)據(jù)分析及可視化概述、第2章-Python數(shù)據(jù)分析平臺(tái)、第3章-數(shù)據(jù)的基本可視化方法_第1頁(yè)
數(shù)據(jù)分析及可視化 課件 第0章-課前準(zhǔn)備、第1章-數(shù)據(jù)分析及可視化概述、第2章-Python數(shù)據(jù)分析平臺(tái)、第3章-數(shù)據(jù)的基本可視化方法_第2頁(yè)
數(shù)據(jù)分析及可視化 課件 第0章-課前準(zhǔn)備、第1章-數(shù)據(jù)分析及可視化概述、第2章-Python數(shù)據(jù)分析平臺(tái)、第3章-數(shù)據(jù)的基本可視化方法_第3頁(yè)
數(shù)據(jù)分析及可視化 課件 第0章-課前準(zhǔn)備、第1章-數(shù)據(jù)分析及可視化概述、第2章-Python數(shù)據(jù)分析平臺(tái)、第3章-數(shù)據(jù)的基本可視化方法_第4頁(yè)
數(shù)據(jù)分析及可視化 課件 第0章-課前準(zhǔn)備、第1章-數(shù)據(jù)分析及可視化概述、第2章-Python數(shù)據(jù)分析平臺(tái)、第3章-數(shù)據(jù)的基本可視化方法_第5頁(yè)
已閱讀5頁(yè),還剩189頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)分析及可視化

—Excel+Python(微課版)課程安排王斌會(huì)

1、在基本統(tǒng)計(jì)學(xué)原理學(xué)習(xí)的基礎(chǔ)上,深入學(xué)習(xí)和掌握

【數(shù)據(jù)分析及可視化】

2、該門課程每周4課時(shí),理論與上機(jī)結(jié)合。期末考核:

總成績(jī)=平時(shí)(20%)+上機(jī)(20%)+期末考試(60%)考試方式

平時(shí)(20):課堂(40%)+出勤(60%)上機(jī)(20):兩次作業(yè),一次50%

期末考試:閉卷數(shù)據(jù)分析及可視化教學(xué)大綱第1章數(shù)據(jù)分析及可視化概述

1.1數(shù)據(jù)分析概述

1.2數(shù)據(jù)的收集與管理

練習(xí)題1第2章Python數(shù)據(jù)分析平臺(tái)

2.1Python數(shù)據(jù)處理基礎(chǔ)

2.2Python數(shù)據(jù)處理方法

練習(xí)題2第3章數(shù)據(jù)的基本可視化方法

3.1基于列表的可視化

3.2基于數(shù)據(jù)框的可視化

練習(xí)題3第4章數(shù)據(jù)挖掘基礎(chǔ)及可視化

4.1數(shù)據(jù)的透視分析

4.2探索數(shù)據(jù)分析

練習(xí)題4第5章數(shù)據(jù)基本分析及可視化

5.1描述性數(shù)據(jù)分析

5.2數(shù)據(jù)的聚類分析

練習(xí)題5第6章數(shù)據(jù)綜合評(píng)價(jià)及可視化

6.1綜合評(píng)價(jià)方法及應(yīng)用

6.2綜合指數(shù)的預(yù)警監(jiān)測(cè)

練習(xí)題6第7章數(shù)據(jù)統(tǒng)計(jì)推斷及可視化

7.1隨機(jī)抽樣及其分布圖

7.2參數(shù)的統(tǒng)計(jì)推斷

練習(xí)題7第8章數(shù)據(jù)模型分析及可視化

8.1相關(guān)分析及可視化

8.2線性回歸模型及可視化

8.3一般線性模型及可視化

練習(xí)題8第9章文本及在線數(shù)據(jù)的挖掘

9.1文本數(shù)據(jù)挖掘與可視化

9.2在線數(shù)據(jù)的獲取與分析

練習(xí)題9數(shù)據(jù)分析及可視化教材目錄王斌會(huì)數(shù)據(jù)分析及可視化教材大綱王斌會(huì)數(shù)據(jù)分析及可視化學(xué)習(xí)網(wǎng)站王斌會(huì)http://R數(shù)據(jù)分析及可視化/Rstat第1章數(shù)據(jù)分析及可視化概述1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.1傳統(tǒng)的數(shù)據(jù)分析1.數(shù)據(jù)分析基礎(chǔ)1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.1傳統(tǒng)的數(shù)據(jù)分析2.數(shù)據(jù)分析基本步驟1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.2大數(shù)據(jù)分析基礎(chǔ)1.大數(shù)據(jù)的含義PB是大數(shù)據(jù)的臨界點(diǎn)KB->MB->GB->TB->PB->EB->ZB->YB->NB->DB1s是大數(shù)據(jù)的臨界點(diǎn)微信、微博、物聯(lián)網(wǎng)結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù)數(shù)據(jù)挖掘統(tǒng)計(jì)分析1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.2大數(shù)據(jù)分析基礎(chǔ)2.大數(shù)據(jù)分析方法1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.2大數(shù)據(jù)分析基礎(chǔ)2.大數(shù)據(jù)分析方法1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.3數(shù)據(jù)分析可視化工具1.常用數(shù)據(jù)分析工具簡(jiǎn)介1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.3數(shù)據(jù)分析可視化工具2.數(shù)據(jù)分析及可視化工具選擇(1)可視化圖表分析工具①

Echart②

Highcharts③

AntV1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.3數(shù)據(jù)分析可視化工具2.數(shù)據(jù)分析及可視化工具選擇(2)商業(yè)智能分析工具

①Tableau

②FineBI

③PowerBI1.1數(shù)據(jù)分析概述第1章數(shù)據(jù)分析及可視化概述1.1.3數(shù)據(jù)分析可視化工具2.數(shù)據(jù)分析及可視化工具選擇(3)編程分析語(yǔ)言

如果僅僅是做一般數(shù)據(jù)分析和可視化,數(shù)據(jù)量不是特別大,而且要求系統(tǒng)免費(fèi)、開源、跨平臺(tái),那么首選的數(shù)據(jù)分析和可視化組合應(yīng)該是WPS+Python。

如果你的數(shù)據(jù)量不大,使用Window平臺(tái)的話,也可考慮用Excel+Python進(jìn)行數(shù)據(jù)分析和可視化,但Excel收費(fèi)。1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述1.2.1數(shù)據(jù)集的構(gòu)成1.數(shù)據(jù)分析指標(biāo)的性質(zhì)(1)定性指標(biāo)(也稱計(jì)數(shù)數(shù)據(jù)):度量事物進(jìn)行分類的結(jié)果,只能歸入某一類而不能用數(shù)值進(jìn)行測(cè)度的數(shù)據(jù)稱為定性數(shù)據(jù)。數(shù)據(jù)表現(xiàn)為類別,常用文字來(lái)表述,如地區(qū)、年份、性別、區(qū)域、產(chǎn)品分類等。地區(qū):廣州,深圳,珠海,佛山,惠州,東莞,中山,江門,肇慶年份:2000,2001,2002,2003,2004,2005,......,2015,2016,20171.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述1.2.1數(shù)據(jù)集的構(gòu)成1.數(shù)據(jù)分析指標(biāo)的性質(zhì)(2)定量指標(biāo)(也稱計(jì)量數(shù)據(jù)):度量事物的精確測(cè)度。結(jié)果表現(xiàn)為具體的數(shù)值,如國(guó)內(nèi)生產(chǎn)總值(GDP)、從業(yè)人員、人均國(guó)內(nèi)生產(chǎn)總值(人均GDP)、身高、體重、家庭收入、成績(jī)等人均GDP:2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74,21.32,12.92消費(fèi)總額:0.88,30.61,30.62,34.62,45.04,41.58,62.1,61.37,47.36,54.93,95.381.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述1.2.1數(shù)據(jù)集的構(gòu)成1.數(shù)據(jù)分析指標(biāo)的性質(zhì)2.分析指標(biāo)體系的構(gòu)建

指標(biāo)體系通常由一個(gè)或多個(gè)指標(biāo)組成。構(gòu)建多變量指標(biāo)體系應(yīng)遵循以下幾項(xiàng)原則:(1)系統(tǒng)全面性原則(2)穩(wěn)定可比性原則(3)簡(jiǎn)明科學(xué)性原則(4)靈活可操作性原則1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述3.指標(biāo)體系的組成(1)指標(biāo)體系的構(gòu)建1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述3.指標(biāo)體系的組成(2)指標(biāo)體系的組成形式1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述1.2.2數(shù)據(jù)的收集與保存1.數(shù)據(jù)的收集范圍

本課程的數(shù)據(jù)收集范圍是廣東省21個(gè)地區(qū)(廣州,深圳,珠海,佛山,惠州,東莞,中山,江門,肇慶……),時(shí)間跨度為2000~2019年,共20年。由于數(shù)據(jù)具有一定的時(shí)滯性,故選擇2000年作為研究的起點(diǎn)。本文的數(shù)據(jù)主要從歷年的《廣東省統(tǒng)計(jì)年鑒》和廣東省各地區(qū)統(tǒng)計(jì)網(wǎng)站等獲取。1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述1.2.2數(shù)據(jù)的收集與保存2.數(shù)據(jù)的構(gòu)成形式1.2數(shù)據(jù)的收集與管理第1章數(shù)據(jù)分析及可視化概述3.數(shù)據(jù)的存儲(chǔ)方式第1章數(shù)據(jù)分析及可視化概述第2章Python數(shù)據(jù)分析平臺(tái)2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境1.Python基礎(chǔ)編程環(huán)境

2.Anaconda計(jì)算發(fā)行包

3.Jupyter項(xiàng)目及其應(yīng)用2.1.2Python的編程基礎(chǔ)1.Python的工作目錄2.Python基本數(shù)據(jù)類型3.Python擴(kuò)展數(shù)據(jù)類型2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用

2.函數(shù)的參數(shù)與返回值2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境1.Python基礎(chǔ)編程環(huán)境Python是一個(gè)強(qiáng)大的面向?qū)ο缶幊陶Z(yǔ)言,這樣的編程環(huán)境需要使用者不僅熟悉各種命令的操作,還須熟悉命令行編程環(huán)境,而且所有命令執(zhí)行完即進(jìn)入新的界面,這給那些不具備編程經(jīng)驗(yàn)或?qū)y(tǒng)計(jì)方法掌握不是很好的使用者造成了極大的困難。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境1.Python基礎(chǔ)編程環(huán)境/2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境2.Anaconda計(jì)算發(fā)行包(1)Anaconda的下載與安裝Anaconda是Python和R的開源發(fā)行版本。它能夠用于數(shù)據(jù)科學(xué),機(jī)器學(xué)習(xí),深度學(xué)習(xí)等領(lǐng)域。Anaconda能夠幫助簡(jiǎn)化軟件包的管理和部署,它還匹配了多種工具,可以使用各種機(jī)器學(xué)習(xí)和人工智能算法輕松地從不同的來(lái)源收集數(shù)據(jù)。Anaconda還可以使用戶獲得一個(gè)易于管理的環(huán)境設(shè)置——用戶只需點(diǎn)擊按鈕就可以部署任何項(xiàng)目。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境2.Anaconda計(jì)算發(fā)行包/products/individual2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境2.Anaconda計(jì)算發(fā)行包(2)Anaconda菜單與啟動(dòng)裝好Anaconda系統(tǒng)后,會(huì)在Windows系統(tǒng)菜單中出現(xiàn)下面的菜單,里面包含了一些常用的數(shù)據(jù)分析平臺(tái),如用于系統(tǒng)導(dǎo)航的AnacondaNavigator、執(zhí)行和安裝Anaconda包的命令行菜單AnacondaPrompt、進(jìn)行數(shù)據(jù)分析教學(xué)的JupyterNotebook、用于數(shù)據(jù)分析編程的Spyder設(shè)置與研發(fā)平臺(tái)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境2.Anaconda計(jì)算發(fā)行包2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(1)Jupyter的啟動(dòng)點(diǎn)擊Anaconda菜單JupyterNotebook或在AnacondaPrompt命令行輸入>jupyternotebook2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(1)Jupyter的啟動(dòng)下面命令可直接在D:\DAV目錄中打開jupyternotebook>jupyternotebook--notebook-dir=D:\DAV也可以在命令行上用>d:>cdd:\DAV>d:\dav>jupyternotebook2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(2)Jupyter的快捷鍵編輯模式,允許往單元中輸入代碼或文本;這時(shí)的單元框線是綠色的。命令模式,通過(guò)鍵盤輸入運(yùn)行程序命令;這時(shí)的單元框線是灰色的。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(2)Jupyter的快捷鍵Shift+Enter:運(yùn)行本單元,選中下一個(gè)單元;Ctrl+Enter:運(yùn)行本單元;Alt+Enter:運(yùn)行本單元,在其下插入新單元;2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(2)Jupyter的快捷鍵Y:?jiǎn)卧D(zhuǎn)入代碼狀態(tài);M:?jiǎn)卧D(zhuǎn)入markdown狀態(tài);A:在上方插入新單元;B:在下方插入新單元;X:剪切選中的單元;Shift+V:在上方粘貼單元。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.1Python的編程環(huán)境3.Jupyter項(xiàng)目及其應(yīng)用(3)Jupyter的魔術(shù)關(guān)鍵字魔術(shù)關(guān)鍵字(magickeywords),正如其名,是用于控制Notebook的特殊命令。它們運(yùn)行在代碼單元中,以%或%%開頭,前者控制一行,后者控制整個(gè)單元。比如,要得到代碼運(yùn)行的時(shí)間,則可以使用%timeit;如要獲得當(dāng)前目錄,可用%pwd,需要改變當(dāng)前目錄,可用%cd"D:\\DAV",具體操作見下節(jié)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)1.Python的工作目錄在使用Python時(shí)一個(gè)重要設(shè)置是定義工作目錄,即設(shè)置當(dāng)前運(yùn)行路徑(這樣全部數(shù)據(jù)和程序都可在該目錄下工作)。例如,可以將自己的Python工作目錄設(shè)定為D:\DAV(先在D盤上建立目錄DAV,然后在該目錄下編程和進(jìn)行數(shù)據(jù)分析)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)1.Python的工作目錄(1)獲得當(dāng)前目錄In%pwdOut'C:\\Users\\Lenovo'2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)1.Python的工作目錄(2)改變工作目錄In%cd"D:\\DAV"Out"D:\DAV"2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型在內(nèi)存中存儲(chǔ)的數(shù)據(jù)可以有多種類型。例如,一個(gè)人的年齡可以用數(shù)字來(lái)存儲(chǔ),名字可以用字符來(lái)存儲(chǔ)。Python定義了一些基本數(shù)據(jù)類型,用于存儲(chǔ)各種類型的數(shù)據(jù)。Python的基本數(shù)據(jù)類型包括數(shù)值型、邏輯型、字符型、復(fù)數(shù)型等,也可能是列表、元組和字典等類型。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(1)數(shù)值型數(shù)值型數(shù)據(jù)的形式是實(shí)型,可以寫成整數(shù)(如n=3)、小數(shù)(如x=1.46)、科學(xué)記數(shù)(y=1e9)的方式,該類型數(shù)據(jù)默認(rèn)是雙精度數(shù)據(jù)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(1)數(shù)值型Python支持多種數(shù)值類型,常見的有:int(整數(shù)型)、float(實(shí)數(shù)型)、complex(復(fù)數(shù)型)等。但有別于其他編程語(yǔ)言,這些數(shù)值在使用前不需要定義它們的類型,直接輸入使用,系統(tǒng)會(huì)自動(dòng)識(shí)別其類型。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(1)數(shù)值型在Python中用#表示注釋,即其后的語(yǔ)句或命令將不執(zhí)行。Inn=10#整數(shù)n#相當(dāng)于print(n)Out102.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(1)數(shù)值型Inx=10.2345#實(shí)數(shù)x#無(wú)格式輸出Out10.2345Inx=10.2345print(“x=%6.3f”%x)#有格式輸出Outx=10.2340Inround(x,1)#保留一位小數(shù)Out10.22.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(2)邏輯型邏輯型數(shù)據(jù)只能取True或False值??梢酝ㄟ^(guò)比較獲得邏輯型數(shù)據(jù)。InA=True;AOutTrueIn10<9OutFalse2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(3)字符型字符型數(shù)據(jù)的形式是夾在雙引號(hào)“”或單引號(hào)‘’之間的字符串,如‘MR’。注意:一定要用英文引號(hào),不能用中文引號(hào)“”或‘’。Python語(yǔ)言中的字符類型(str)是由數(shù)字、字母、下畫線組成的一串字符。一般形式為:‘IlovePython’或"IlovePython“2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(3)字符型它是編程語(yǔ)言中表示文本的數(shù)據(jù)類型。Ins=“Python";sOut'Python'InS='WelovePythondataanalysis';SOut'WelovePythondataanalysis'2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)2.Python基本數(shù)據(jù)類型(3)字符型Python的所有數(shù)據(jù)類型都是類,可以通過(guò)type()函數(shù)查看該變量的數(shù)據(jù)類型。用astype()可進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。用astype()可進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。Intype(n)OutintIntype(x)Outfloat2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型Python有幾個(gè)擴(kuò)展的自定義數(shù)據(jù)類型,這些數(shù)據(jù)類型是由上述基本類型構(gòu)成的。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型(1)列表(list)列表(list)是Python中最有用的數(shù)據(jù)類型之一。列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。它支持字符、數(shù)字、字符串,甚至可以包含列表(即嵌套)。列表用[]標(biāo)識(shí),是一種最通用的復(fù)合數(shù)據(jù)類型。列表List是我們進(jìn)行數(shù)據(jù)分析的基本類型,所以必須掌握。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型In珠三角=['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶'];珠三角Out['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶']InCGDP=[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74];CGDP#人均GDPOut[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74](1)列表(list)2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型(1)列表(list)Python的列表具有切片功能,列表中值的切割也可以用到變量[頭下標(biāo):尾下標(biāo)],就可以截取相應(yīng)的列表,從左到右索引默認(rèn)0開始,從右到左索引默認(rèn)1開始,下標(biāo)可以為空,表示取到頭或尾。加號(hào)+是列表連接運(yùn)算符。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型In珠三角[0]#輸出列表的第一個(gè)元素Out'廣州'In珠三角[1:3]#輸出第二個(gè)至第三個(gè)元素Out['深圳','珠海']In珠三角[2:]#輸出從第三個(gè)開始至列表末尾的所有元素Out['珠海','佛山','惠州','東莞','中山','江門','肇慶']In珠三角[:4]+CGDP[:4]#列表合并輸出Out['廣州','深圳','珠海','佛山',2.58,3.33,2.81,2.02]2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型(1)列表(list)python的內(nèi)置函數(shù)range()可創(chuàng)建一個(gè)整數(shù)列表,使用range函數(shù)可生成各種類型的列表,在range在python3變成一個(gè)迭代器,輸出需用list。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型Ina=range(5)#從0開始到4的整數(shù)=range(0,4)list(a)#顯示整數(shù)列表Out[0,1,2,3,4]Inb=range(1,5)#從1開始到5整數(shù)列l(wèi)ist(b)Out[1,2,3,4]Inc=range(0,9,2)#步長(zhǎng)為2的整數(shù)列l(wèi)ist(c)Out[0,2,4,6,8]2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型(2)字典(dictionary)字典(dictionary)也是一種Python自定義數(shù)據(jù)類型,可存儲(chǔ)任意類型對(duì)象,可看做列表的擴(kuò)展形式。字典的每個(gè)鍵值對(duì)用冒號(hào)“:”分隔,每個(gè)鍵值對(duì)之間用逗號(hào)“,”分隔,整個(gè)字典包括在花括號(hào){}中,格式如下:dict={key1:value1,key2:value2}2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型(2)字典(dictionary)鍵必須是唯一的,但值則不必,值可以取任何數(shù)據(jù)類型,如字符串、數(shù)字或列表。字典是除列表以外Python中最靈活的自定義數(shù)據(jù)結(jié)構(gòu)類型。列表是有序的對(duì)象集合,字典是無(wú)序的對(duì)象集合。兩者之間的區(qū)別在于:字典中的元素是通過(guò)鍵來(lái)存取的,而不是通過(guò)下標(biāo)存取。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.2Python的編程基礎(chǔ)3.Python擴(kuò)展數(shù)據(jù)類型InDict={'區(qū)域':珠三角,'人均GDP':CGDP};Dict#定義字典Out{'區(qū)域':['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶'],'人均GDP':[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]}InDict['人均GDP’]#輸出鍵為'人均GDP'的值Out[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]InDict.keys()#輸出所有鍵Outdict_keys(['區(qū)域','人均GDP'])InDict.values()#輸出所有值Outdict_values([['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶'],[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]])2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用(1)函數(shù)的定義下面簡(jiǎn)單介紹一下Python的函數(shù)定義方法。定義函數(shù)的句法:def函數(shù)名(參數(shù)1,參數(shù)2,…):函數(shù)體Return2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用(1)函數(shù)的定義函數(shù)名可以是任意字符,但之前定義過(guò)的要小心使用,后定義的函數(shù)會(huì)覆蓋先定義的函數(shù)。如果函數(shù)只用來(lái)計(jì)算,不需要返回結(jié)果,則可在函數(shù)中用print函數(shù),這時(shí)只用變量名是無(wú)法顯示結(jié)果的。一旦定義了函數(shù)名,就可以像Python的其他函數(shù)一樣使用。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用(1)函數(shù)的定義由于Python是開源的,故所有函數(shù)使用者都可以查看其源代碼,而且所有人都可以隨時(shí)修改這些函數(shù)形成自己的函數(shù)。用戶自己寫的函數(shù)稱為自定義函數(shù),Python語(yǔ)言最大的優(yōu)勢(shì)就是可以隨時(shí)隨地編寫自己的函數(shù),而且可以像Python的內(nèi)置函數(shù)一樣使用自定義的函數(shù)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用(1)函數(shù)的定義首先寫一個(gè)類似于輸出最大值的自定義函數(shù),比較兩個(gè)數(shù)的大小,并打印較大的數(shù)。print_max為函數(shù)名,x、y為函數(shù)參數(shù),多個(gè)參數(shù)使用逗號(hào)隔開。Indefprint_max(x,y):ifx>y:print(x)else:print(y)2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義1.函數(shù)的定義與調(diào)用(2)函數(shù)的調(diào)用函數(shù)寫好之后,需要供別人使用,例如我們使用(調(diào)用)上面的比較大小的函數(shù)。Inprint_max(3,5)Out52.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義2.函數(shù)的參數(shù)與返回值(1)函數(shù)的調(diào)用函數(shù)的參數(shù):函數(shù)參數(shù)分為形參和實(shí)參,定義函數(shù)時(shí)的參數(shù)為形參,調(diào)用函數(shù)時(shí)傳入的參數(shù)為實(shí)參。例如在定義print_max函數(shù)時(shí)的x和y為形參,告訴使用者這里有兩個(gè)參數(shù)需要傳入,在調(diào)用函數(shù)時(shí)print_max(3,5)中的3和5為實(shí)參,是傳入的真實(shí)參數(shù)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義2.函數(shù)的參數(shù)與返回值(2)函數(shù)返回值:很多時(shí)候我們希望一個(gè)函數(shù)通過(guò)計(jì)算得出某個(gè)結(jié)果,同時(shí)我們能夠拿到這個(gè)結(jié)果。例如上面的例子比較兩個(gè)數(shù)的大小,我們不僅需要能夠比較出來(lái)(打印出來(lái)),還需要得到其中較大的一個(gè),那么這時(shí)候就需要返回語(yǔ)句。函數(shù)要想有返回值,可以使用return語(yǔ)句來(lái)實(shí)現(xiàn)。2.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義2.函數(shù)的參數(shù)與返回值(2)函數(shù)返回值舉例說(shuō)明:把我們自定義的print_max函數(shù)做如下修改:Indefprint_max(x,y):ifx>y:return(x)else:return(y)Inz=print_max(3,5);zOut52.1Python數(shù)據(jù)處理基礎(chǔ)第2章Python數(shù)據(jù)分析平臺(tái)2.1.3Python的函數(shù)定義2.函數(shù)的參數(shù)與返回值(2)函數(shù)返回值return語(yǔ)句語(yǔ)法特點(diǎn):函數(shù)中使用return語(yǔ)句,可以將值返回。return語(yǔ)句后不加參數(shù),返回的值是None。如果在函數(shù)當(dāng)中使用return語(yǔ)句,return之后的代碼行不會(huì)被執(zhí)行。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包

2.數(shù)據(jù)框及其構(gòu)成

3.數(shù)據(jù)框的讀存2.2.2數(shù)據(jù)框的基本操作1.數(shù)據(jù)框結(jié)構(gòu)2.數(shù)據(jù)框顯示3.選取列變量4.選取行數(shù)據(jù)2.2.3數(shù)據(jù)框的重組與透視1.合并數(shù)據(jù)框

2.數(shù)據(jù)框的重構(gòu)3.數(shù)據(jù)框的透視2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包Python具有豐富的數(shù)據(jù)分析模塊,大多數(shù)做數(shù)據(jù)分析的人使用Python是因?yàn)槠鋸?qiáng)大的數(shù)據(jù)分析功能。所有的Python函數(shù)和數(shù)據(jù)集是保存在包(庫(kù))里面的。只有當(dāng)一個(gè)包被安裝并被載入時(shí),它的內(nèi)容才可以被訪問(wèn)。這樣做一是為了高效(所有的方法加載會(huì)耗費(fèi)大量的內(nèi)存并且增加搜索的時(shí)間);二是為了幫助包的開發(fā)者,防止命名和其他代碼中的名稱沖突。2.2Python數(shù)據(jù)處理方法包名說(shuō)明主要功能numpy數(shù)值計(jì)算包numpy(NumericPython)是Python的一種開源的數(shù)值計(jì)算擴(kuò)展,以實(shí)現(xiàn)科學(xué)的計(jì)算。它提供了許多高級(jí)的數(shù)值計(jì)算工具,如矩陣數(shù)據(jù)類型、線性代數(shù)的運(yùn)算庫(kù)。專為進(jìn)行嚴(yán)格的數(shù)值運(yùn)算而產(chǎn)生,具有Matlab的大部分?jǐn)?shù)值計(jì)算功能。pandas數(shù)據(jù)操作包提供類似于R語(yǔ)言的DataFrame操作,非常方便。pandas是面板數(shù)據(jù)(PanelData)分析的簡(jiǎn)寫。它是Python最強(qiáng)大的數(shù)據(jù)分析和探索工具,因金融數(shù)據(jù)分析而開發(fā),支持類似SQL的數(shù)據(jù)增刪改查,支持時(shí)間序列分析,靈活處理缺失數(shù)據(jù)。matplotlib基本繪圖包該包主要用于繪圖和繪表,是一個(gè)強(qiáng)大的數(shù)據(jù)可視化工具,語(yǔ)法類似Matlab,是Python的基本繪圖框架,提供了一整套和Matlab相似的命令A(yù)PI,十分適合基本數(shù)據(jù)分析制圖。第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法包名說(shuō)明主要功能cufflinks動(dòng)態(tài)繪圖包c(diǎn)ufflinks是一個(gè)可視化的庫(kù),可以無(wú)縫銜接pandas和plotly。cufflinks在plotly的基礎(chǔ)上做了一進(jìn)一步的包裝,方法統(tǒng)一,參數(shù)配置簡(jiǎn)單,可以結(jié)合pandas的DataFrame靈活地畫很多動(dòng)態(tài)圖。scipy科學(xué)計(jì)算包提供了很多科學(xué)計(jì)算工具和算法,方便易于使用,專為科學(xué)和工程設(shè)計(jì)的Python工具包。它包括統(tǒng)計(jì)、優(yōu)化、整合、線性代數(shù)模塊、傅里葉變換、信號(hào)和圖像處理、常微分方程求解器等,包含常用的統(tǒng)計(jì)估計(jì)和檢驗(yàn)方法statsmodels統(tǒng)計(jì)模型包statsmodel可以補(bǔ)充scipy.stats,是一個(gè)包含統(tǒng)計(jì)模型、統(tǒng)計(jì)測(cè)試和統(tǒng)計(jì)數(shù)據(jù)挖掘的Python模塊。對(duì)每一個(gè)模型都會(huì)生成一個(gè)對(duì)應(yīng)的統(tǒng)計(jì)結(jié)果,對(duì)時(shí)間序列有完美支持第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包注意:安裝程序包和調(diào)用程序包是兩個(gè)概念,安裝程序包是指將需要的程序包安裝到電腦中,調(diào)用包是指將程序包調(diào)入Python環(huán)境中。如numpy、matplotlib、pandas、scipy和statsmodels這些常用的數(shù)據(jù)分析包Anaconda已自動(dòng)安裝了,而cufflinks包需要我們手動(dòng)安裝。有兩種方式:2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包(1)命令行安裝:在AnacondaPrompt的命令行安裝>pipinstallcufflinks(2)平臺(tái)里安裝:在JupyterNotebook或JupyterLab中安裝2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)In!pipinstallcufflinksOutRequirementalreadysatisfied:cufflinksinc:\users\lenovo\anaconda3\lib\site-packages(0.17.3)Requirementalreadysatisfied:ipywidgets>=7.0.0inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(7.5.1)Requirementalreadysatisfied:ipython>=5.3.0inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(7.16.1)Requirementalreadysatisfied:plotly>=4.1.1inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(4.12.0)……2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包(3)包及其函數(shù)使用下面以numpy為例介紹Python中已安裝的包及其函數(shù)的使用。numpy是Python的一種開源的數(shù)值計(jì)算擴(kuò)展,這種工具可用來(lái)存儲(chǔ)和處理大型矩陣,比Python自身的列表結(jié)構(gòu)要高效的多(該結(jié)構(gòu)也可以用來(lái)表示二維數(shù)組(矩陣matrix)和多維數(shù)組),基本可替代matlab的矩陣運(yùn)算。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包1.常用數(shù)據(jù)處理包(3)包及其函數(shù)使用Python調(diào)用包的命令是import,如要調(diào)用上述的數(shù)值分析包,可用Inimportnumpy#將以numpy名調(diào)用函數(shù)numpy.array([1,2,3,4,5])#根據(jù)列表構(gòu)建的一維數(shù)組要使用這些包中的函數(shù),可直接使用包名加“.”。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)如要簡(jiǎn)化包的寫法,可用as命令賦予包的別名,如Inimportnumpyasnpa=np.array([1,2,3,4,5]);aOutarray([1,2,3,4,5])Inb=np.arange(5);b#數(shù)差序列,差距1Outarray([0,1,2,3,4])Inc=np.arange(1,5,0.5);c#等差數(shù)列,差距0.5Outarray([1.,1.5,2.,2.5,3.,3.5,4.,4.5])Ind=np.linspace(1,9,5);d#等距數(shù)列Outarray([1.,3.,5.,7.,9.])2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)numpy包中的函數(shù)調(diào)用Inimportnumpyasnp#將以np名調(diào)用函數(shù)np.log([1,2,3,4,5])也可以用別名方式直接調(diào)用包中具體函數(shù)。Infromnumpyimportlogasln#定義函數(shù)log的別名為lnln([1,2,3,4,5])2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)用astype()可以對(duì)numpy中的數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換,該命令也適用于下面的數(shù)據(jù)框序列。Inc.astype(int)#將數(shù)組c轉(zhuǎn)換為整型Outarray([1,1,2,2,3,3,4,4])Ina.astype(str)#將數(shù)組a轉(zhuǎn)換為字符型Outarray(['1','2','3','4','5'],dtype='<U11')2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包2.數(shù)據(jù)框及其構(gòu)成數(shù)據(jù)框相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)中的結(jié)構(gòu)化數(shù)據(jù)類型,傳統(tǒng)的數(shù)據(jù)大都以結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)于關(guān)系數(shù)據(jù)庫(kù)中,因而Pyhton的數(shù)據(jù)分析主要是以數(shù)據(jù)框?yàn)榛A(chǔ)的。這里說(shuō)的數(shù)據(jù)框可以看做結(jié)構(gòu)化數(shù)據(jù)的一個(gè)Python實(shí)現(xiàn),Python中數(shù)據(jù)框是用pandas包中的DataFrame()函數(shù)生成的。DataFrame()命令可用序列構(gòu)成一個(gè)數(shù)據(jù)框。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包2.數(shù)據(jù)框及其構(gòu)成(1)數(shù)據(jù)框生成Inimportpandasaspdpd.DataFrame()#生成空數(shù)據(jù)框Out—InfrompandasimportDataFrame#數(shù)據(jù)框的簡(jiǎn)寫,本書采用的是該格式DataFrame()Out—2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)根據(jù)列表創(chuàng)建數(shù)據(jù)框In珠三角=['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶'];珠三角Out['廣州','深圳','珠海','佛山','惠州','東莞','中山','江門','肇慶']InDataFrame(珠三角)Out00廣州1深圳2珠海3佛山4惠州5東莞6中山7江門8肇慶2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)相反,list()或.tolist()可將數(shù)據(jù)框的列數(shù)據(jù)轉(zhuǎn)換為列表。InCGDP=[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74];CGDP#人均GDPOut[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]InDataFrame(data=CGDP,index=珠三角,columns=['CGDP'])OutCGDP廣州2.58深圳3.33珠海2.81佛山2.02惠州1.39東莞1.36中山1.51江門1.28肇慶0.742.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.1Python數(shù)據(jù)處理包3.數(shù)據(jù)框的讀存(1)讀取Excel格式數(shù)據(jù)使用pandas包中的read_excel可直接讀取excel文檔中的任意表單數(shù)據(jù),其讀取命比較簡(jiǎn)單,例如,要讀取DAV_data.xlsx文檔的表單的[數(shù)據(jù)],可用以下命令,其中GD為數(shù)據(jù)框?qū)ο蟆?.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)【Excel的基本操作】2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)許多情況下,數(shù)據(jù)框是按格式輸出的,都可用print將其按文本列表的形式輸出,但這時(shí)中文數(shù)據(jù)有可能會(huì)出現(xiàn)排版亂碼情況。2.2.1Python數(shù)據(jù)處理包3.數(shù)據(jù)框的讀存2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)數(shù)據(jù)框數(shù)據(jù)的保存前面說(shuō)過(guò),Python管理數(shù)據(jù)集的最好方式是電子表格格式,pandas保存電子表格數(shù)據(jù)的命令也很簡(jiǎn)單。2.2.1Python數(shù)據(jù)處理包3.數(shù)據(jù)框的讀存InGD.to_excel('myGD.xlsx’)#將數(shù)據(jù)框GD保存myGD.xlsx文檔中2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)前面已提到,pandas是基于numpy的一種數(shù)據(jù)分析包,該包是為了解決數(shù)據(jù)分析任務(wù)而創(chuàng)建的。pandas納入了大量庫(kù)和一些標(biāo)準(zhǔn)的數(shù)據(jù)模型,提供了高效地操作大型數(shù)據(jù)集所需的工具。pandas提供了大量能使我們快速便捷地處理數(shù)據(jù)的函數(shù)和方法。你很快就會(huì)發(fā)現(xiàn),它是使Python成為強(qiáng)大而高效的數(shù)據(jù)分析環(huán)境的重要因素之一。pandas顧名思義就是面板數(shù)據(jù)分析序列(paneldataanalysisserise),故pandas是數(shù)據(jù)處理和時(shí)序數(shù)據(jù)分析的首選包。2.2.2數(shù)據(jù)框的基本操作2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)InGD.info()#數(shù)據(jù)框信息Out<class'pandas.core.frame.DataFrame'>Int64Index:420entries,1to420Datacolumns(total8columns):#ColumnNon-NullCountDtype----------------------------0年份420non-nullint641地區(qū)420non-nullobject2GDP420non-nullfloat643人均GDP420non-nullfloat644從業(yè)人員420non-nullfloat645進(jìn)出口額420non-nullfloat646消費(fèi)總額420non-nullfloat647RD經(jīng)費(fèi)420non-nullfloat64dtypes:float64(6),int64(1),object(1)memoryusage:29.5+KB(1)數(shù)據(jù)框的基本信息2.2.1Python數(shù)據(jù)處理包1.數(shù)據(jù)框結(jié)構(gòu)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)數(shù)據(jù)框的維度2.2.2數(shù)據(jù)框的基本操作1.數(shù)據(jù)框結(jié)構(gòu)InGD.shape#數(shù)據(jù)框的行數(shù)和列數(shù)Out(420,8)InGD.shape[0]#數(shù)據(jù)框的行數(shù)Out420InGD.shape[1]#數(shù)據(jù)框的列數(shù)Out82.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(3)數(shù)據(jù)框的行列名2.2.2數(shù)據(jù)框的基本操作1.數(shù)據(jù)框結(jié)構(gòu)InGD.index#數(shù)據(jù)框行名OutInt64Index([1,2,3,4,5,6,7,8,9,10,...416,417,418,419,420],dtype='int64',name='序號(hào)',length=420)InGD.columns#數(shù)據(jù)框列名OutIndex(['年份','地區(qū)','GDP','人均GDP','從業(yè)人員','進(jìn)出口額','消費(fèi)總額','RD經(jīng)費(fèi)'],dtype='object')2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)函數(shù)法2.2.2數(shù)據(jù)框的基本操作2.數(shù)據(jù)框顯示2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)全局設(shè)置法2.2.2數(shù)據(jù)框的基本操作2.數(shù)據(jù)框顯示In#pd.set_option('display.max_rows',None)#顯示所有數(shù)據(jù)行pd.set_option('display.max_rows',10)#共顯示10行數(shù)據(jù)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)選取數(shù)據(jù)框中列變量的方法主要是“.”法或[‘’],這是Python中最直觀的選擇變量的方法,比如,要選取數(shù)據(jù)框GD中的“年份”和“地區(qū)”變量,直接用GD.年份與GD.地區(qū)即可,也可用GD[‘年份’]與GD[‘地區(qū)’],該方法書寫比

“.”法煩瑣,但卻是最不容易出錯(cuò)且直觀的一種方法,且可推廣到多個(gè)變量的情形。2.2.2數(shù)據(jù)框的基本操作3.選取列變量2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)選取一列(單變量)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)選取多列(多變量)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)橫向數(shù)據(jù)2.2.2數(shù)據(jù)框的基本操作4.選取行數(shù)據(jù)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.2數(shù)據(jù)框的基本操作4.選取行數(shù)據(jù)(1)橫向數(shù)據(jù)【Excel的基本操作】Excel提供了多種數(shù)據(jù)篩選的方法,本節(jié)將介紹自動(dòng)篩選,自動(dòng)篩選適用于對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單的條件篩選,篩選時(shí)將不滿足條件的數(shù)據(jù)暫時(shí)隱藏起來(lái),只顯示符合條件的數(shù)據(jù),是一種最簡(jiǎn)單的數(shù)據(jù)篩選方式。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.2數(shù)據(jù)框的基本操作4.選取行數(shù)據(jù)【Excel的基本操作】1)選中數(shù)據(jù)清單中的任一數(shù)據(jù)單元格,切換到“數(shù)據(jù)”選項(xiàng)卡,在“排序和篩選”組中單擊“篩選”,這時(shí),數(shù)據(jù)清單中的每列的標(biāo)志旁邊都會(huì)出現(xiàn)一個(gè)下拉箭頭。如下圖所示。2)點(diǎn)擊“年份”會(huì)出現(xiàn)篩選框,選取或輸入2019將篩選2019年的數(shù)據(jù)。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)縱向數(shù)據(jù)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(3)面板數(shù)據(jù)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)同上,點(diǎn)擊“地區(qū)”會(huì)出現(xiàn)篩選框,選取相關(guān)地區(qū)將篩選相應(yīng)地區(qū)的數(shù)據(jù)。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視1.合并數(shù)據(jù)框首先構(gòu)建兩個(gè)用于重塑的數(shù)據(jù)框df1和df2。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)數(shù)據(jù)框的追加append2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)數(shù)據(jù)框的合并merge2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視2.數(shù)據(jù)框的重構(gòu)Python數(shù)據(jù)分析包pandas的數(shù)據(jù)框可以看做矩陣的一種推廣,具有一般關(guān)系型數(shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)的一些特點(diǎn),如刪除數(shù)據(jù)框列與行,設(shè)置數(shù)據(jù)框索引(行名)等,本文下面的數(shù)據(jù)分析和可視化基本都是基于數(shù)據(jù)框的。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)增加列2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)刪除列axis=0時(shí)表示刪除行,如df.drop([1,4],axis=0)即為刪除1和4行。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(3)數(shù)據(jù)框的索引DataFrame可以通過(guò)set_index方法設(shè)置某一列變量為行索引,使用reset_index還原行索引為列變量。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(3)數(shù)據(jù)框的索引應(yīng)用reset_index函數(shù)可以還原行索引,即將上面的地區(qū)行索引還原為第二列變量。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(4)數(shù)據(jù)框的排序2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(4)數(shù)據(jù)框的排序2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(4)數(shù)據(jù)框的排序2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視pandas有一個(gè)數(shù)據(jù)透視函數(shù)pivot(),可以生成任意維度透視表,可以實(shí)現(xiàn)Excel等電子表格的透視表功能。但這里的透視函數(shù)pivot主要用于數(shù)據(jù)的重構(gòu),并沒(méi)有統(tǒng)計(jì)計(jì)算功能,要做數(shù)據(jù)的透視分析,參見4.1節(jié)的透視表函數(shù)pivot_table。pivot有三個(gè)重要的參數(shù)index(行)、columns(列)、values(值),如果不改變函數(shù)中的參數(shù)順序的話,可以不寫參數(shù)名,只寫變量名。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)無(wú)篩選透視表2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(1)無(wú)篩選透視表2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視(1)無(wú)篩選透視表【Excel的基本操作】1)選擇數(shù)據(jù)清單中的任意一個(gè)單元格,單擊“插入”選項(xiàng)卡,單擊“數(shù)據(jù)透視表”下拉按鈕,執(zhí)行“數(shù)據(jù)透視表”命令,將彈出如下圖所示的“創(chuàng)建數(shù)據(jù)透視表”對(duì)話框。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視(1)無(wú)篩選透視表【Excel的基本操作】2)在“請(qǐng)選擇要分析的數(shù)據(jù)”選區(qū)中,默認(rèn)已經(jīng)選定了前面所選單元格所在的數(shù)據(jù)區(qū)域,也可以重新選擇數(shù)據(jù)區(qū)域,單擊右邊的折疊按鈕,選擇完數(shù)據(jù)區(qū)域后單擊展開按鈕即可。在“選擇放置數(shù)據(jù)透視表的位置”選區(qū)中,可以選擇在新工作表中或者現(xiàn)有工作表中放置數(shù)據(jù)透視表,這里選擇“新工作表”,然后單擊“確定”按鈕。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視(1)無(wú)篩選透視表【Excel的基本操作】3)單擊確定后,在新工作表的右邊將出現(xiàn)“數(shù)據(jù)透視表字段列表”框。在字段復(fù)選框中選中“年份”、“地區(qū)”和“人均GDP”三項(xiàng),其中“人均GDP”作為求和項(xiàng)、“地區(qū)”作為行標(biāo)簽、“年份”作為列標(biāo)簽,可拖動(dòng)該字段到列標(biāo)簽區(qū)域內(nèi)即可。在“數(shù)據(jù)透視表字段列表”框中設(shè)置的同時(shí),數(shù)據(jù)透視表會(huì)即時(shí)顯示相應(yīng)的結(jié)果。如下圖所示。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視(2)有篩選透視表2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)有篩選透視表2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)(2)有篩選透視表2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)2.2.3數(shù)據(jù)框的重組與透視3.數(shù)據(jù)框的透視(2)有篩選透視表【Excel的基本操作】在字段復(fù)選框中選中“年份”、“地區(qū)”和“GDP、消費(fèi)總額”三項(xiàng),其中“GDP、消費(fèi)總額”作為求和項(xiàng)、“年份”作為行標(biāo)簽、“地區(qū)”作為列標(biāo)簽,如下圖所示。2.2Python數(shù)據(jù)處理方法第2章Python數(shù)據(jù)分析平臺(tái)第2章Python數(shù)據(jù)分析平臺(tái)第3章數(shù)據(jù)的基本可視化方法3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖

2.縱向數(shù)據(jù)的繪圖

3.1.2Matplotlib的圖形設(shè)置1.圖形大小設(shè)置2.標(biāo)題、標(biāo)簽及顏色3.線型和符號(hào)3.1基于列表的可視化matplotlib

是Python的基本繪圖包,是一個(gè)Python的圖形框架。它是Python最著名的繪圖庫(kù),提供了一整套和Matlab

相似的命令A(yù)PI,十分適合交互式地進(jìn)行制圖。在繪制中文圖形時(shí),須作一些基本設(shè)置。3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(1)條圖(bar)條圖又稱條形圖或柱形圖,是以寬度相等的條形高度或長(zhǎng)度的差異來(lái)顯示統(tǒng)計(jì)指標(biāo)數(shù)值多少或大小的一種圖形。條圖的高度可以是頻數(shù)或頻率,圖的形狀看起來(lái)是一樣的,但是刻度不一樣。matplotlib畫條形圖的命令是bar()。3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(1)條圖(bar)3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(1)條圖(bar)3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(1)條圖(bar)【Excel的基本操作】篩選2015年珠三角數(shù)據(jù),選擇C317:C337和E317:E337單元格區(qū)域,切換到“插入”選項(xiàng)卡,在“圖表”組中單擊“柱形圖”按鈕,在子圖表類型中,選擇二維柱形圖,即可生成如下圖。其他統(tǒng)計(jì)圖的Excel繪制基本一致,所以下面從略。3.1基于列表的可視化(1)條圖(bar)【Excel的基本操作】3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(2)餅圖(pie)餅圖也稱圓圖,是由一個(gè)圓或多個(gè)扇形組成,每個(gè)扇形顯示不同顏色。每個(gè)扇形的角度大小可顯示一個(gè)數(shù)據(jù)系列中各項(xiàng)的大小與各項(xiàng)總和的比例。在matplotlib中作餅圖也很簡(jiǎn)單,只要使用命令pie()就可以了。3.1基于列表的可視化3.1.1Matplotlib的基本繪圖1.橫向數(shù)據(jù)的繪圖(2)餅圖(pie)3.1基于列表的可視化3.1.1Matplotlib的基本繪圖2.縱向數(shù)據(jù)的繪圖3.1基于列表的可視化3.1.1Matplotlib的基本繪圖2.縱向數(shù)據(jù)的繪圖(1)線圖(line)3.1基于列表的可視化3.1.1Matplotlib的基本繪圖2.縱向數(shù)據(jù)的繪圖(2)點(diǎn)線圖(point-line)3.1基于列表的可視化(2)點(diǎn)線圖(point-line)【Excel的基本操作】篩選佛山數(shù)據(jù),選擇B列和D列數(shù)據(jù),切換到“插入”選項(xiàng)卡,在“圖表”組中單擊“折線圖”按鈕,在子圖表類型中,選擇二維折線圖,即可生成如下圖。3.1基于列表的可視化(2)點(diǎn)線圖(point-line)【Excel的基本操作】3.1基于列表的可視化3.1.1Matplotlib的基本繪圖2.縱向數(shù)據(jù)的繪圖(3)面積(stackplot)3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置3.1基于列表的可視化Python中的每一個(gè)繪圖函數(shù),都有許多參數(shù)設(shè)置選項(xiàng),但大多數(shù)繪圖函數(shù)的選項(xiàng)是同樣的,matplotlib的繪圖函數(shù)非常強(qiáng)大,包含許多圖形參數(shù)設(shè)置,可以通過(guò)幫助學(xué)習(xí)。3.1.2Matplotlib的圖形設(shè)置1.圖形大小設(shè)置用參數(shù)figsize

可設(shè)定圖形大小。3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置1.圖形大小設(shè)置3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置2.標(biāo)題、標(biāo)簽及顏色plt.title:設(shè)置圖形標(biāo)題和字體大??;plt.xlabel、plt.ylabel:設(shè)置坐標(biāo)軸名稱;plt.xlim、plt.ylim:設(shè)置橫縱坐標(biāo)軸范圍;colors:控制圖形的顏色,c='red':設(shè)置為紅色。3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置2.標(biāo)題、標(biāo)簽及顏色3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置3.線型和符號(hào)控制連線的線型:'-'實(shí)線,'--'虛線,':'點(diǎn)線;控制符號(hào)的類型:'.'繪制實(shí)心小點(diǎn),'o'繪制實(shí)心大點(diǎn)。3.1基于列表的可視化3.1.2Matplotlib的圖形設(shè)置3.線型和

溫馨提示

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

評(píng)論

0/150

提交評(píng)論