Python數(shù)據(jù)分析與實(shí)戰(zhàn)(微課版)課件 第1章 Python數(shù)據(jù)分析概述_第1頁
Python數(shù)據(jù)分析與實(shí)戰(zhàn)(微課版)課件 第1章 Python數(shù)據(jù)分析概述_第2頁
Python數(shù)據(jù)分析與實(shí)戰(zhàn)(微課版)課件 第1章 Python數(shù)據(jù)分析概述_第3頁
Python數(shù)據(jù)分析與實(shí)戰(zhàn)(微課版)課件 第1章 Python數(shù)據(jù)分析概述_第4頁
Python數(shù)據(jù)分析與實(shí)戰(zhàn)(微課版)課件 第1章 Python數(shù)據(jù)分析概述_第5頁
已閱讀5頁,還剩52頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Python數(shù)據(jù)分析概述1Python數(shù)據(jù)分析的工具目錄認(rèn)識(shí)數(shù)據(jù)分析2安裝Python的Anaconda發(fā)行版3JupyterNotebook常用功能4數(shù)據(jù)分析是指用適當(dāng)?shù)姆治龇椒▽?duì)收集來的大量數(shù)據(jù)進(jìn)行分析,提取有用信息并形成結(jié)論,對(duì)數(shù)據(jù)加以詳細(xì)研究和概括總結(jié)的過程。隨著計(jì)算機(jī)技術(shù)的全面發(fā)展,企業(yè)生產(chǎn)、收集、存儲(chǔ)和處理數(shù)據(jù)的能力大大提高,數(shù)據(jù)量與日俱增。而在現(xiàn)實(shí)生活中,需要將這些繁多、復(fù)雜的數(shù)據(jù)通過統(tǒng)計(jì)分析進(jìn)行提煉,以此研究出數(shù)據(jù)的發(fā)展規(guī)律,進(jìn)而幫助企業(yè)管理層做出決策,增強(qiáng)行業(yè)、社會(huì)穩(wěn)步前行的信心,提升銳意創(chuàng)新、奮勇超越的不屈精神,為未來科學(xué)發(fā)展取得卓越建樹打下基礎(chǔ)。數(shù)據(jù)分析的概念廣義的數(shù)據(jù)分析包括狹義數(shù)據(jù)分析和數(shù)據(jù)挖掘。狹義數(shù)據(jù)分析是指根據(jù)分析目的,采用對(duì)比分析、分組分析、交叉分析和回歸分析等分析方法,對(duì)收集的數(shù)據(jù)進(jìn)行處理與分析,提取有價(jià)值的信息,發(fā)揮數(shù)據(jù)的作用,得到一個(gè)特征統(tǒng)計(jì)量結(jié)果的過程。數(shù)據(jù)分析的概念數(shù)據(jù)分析的流程

數(shù)據(jù)分析已經(jīng)逐漸演化為一種解決問題的過程,甚至是一種方法論。雖然每個(gè)公司都會(huì)根據(jù)自身需求和目標(biāo)創(chuàng)建最適合的數(shù)據(jù)分析流程,但是數(shù)據(jù)分析的核心步驟是一致的。需求分析一詞來源于產(chǎn)品設(shè)計(jì),主要是指從用戶提出的需求出發(fā),挖掘用戶內(nèi)心的真實(shí)意圖,并轉(zhuǎn)化為產(chǎn)品需求的過程。產(chǎn)品設(shè)計(jì)的第一步就是需求分析,也是非常關(guān)鍵的一步,因?yàn)樾枨蠓治鰶Q定了產(chǎn)品方向。錯(cuò)誤的需求分析可能導(dǎo)致產(chǎn)品在實(shí)現(xiàn)過程中走入錯(cuò)誤方向,甚至對(duì)企業(yè)造成損失。數(shù)據(jù)分析中的需求分析是數(shù)據(jù)分析環(huán)節(jié)的第一步,也是非常重要的一步,決定了后續(xù)的分析方向和方法。數(shù)據(jù)分析中的需求分析的主要內(nèi)容是根據(jù)業(yè)務(wù)、生產(chǎn)和財(cái)務(wù)等部門的需要,結(jié)合現(xiàn)有的數(shù)據(jù)情況,提出數(shù)據(jù)分析需求的整體分析方向、分析內(nèi)容,最終和需求方達(dá)成一致意見。數(shù)據(jù)分析的流程1.需求分析數(shù)據(jù)獲取是數(shù)據(jù)分析工作的基礎(chǔ),是指根據(jù)需求分析的結(jié)果提取、收集數(shù)據(jù)。數(shù)據(jù)獲取主要有兩種方式:網(wǎng)絡(luò)數(shù)據(jù)與本地?cái)?shù)據(jù)。網(wǎng)絡(luò)數(shù)據(jù)是指存儲(chǔ)在互聯(lián)網(wǎng)中的各類視頻、圖片、語音和文字等信息。本地?cái)?shù)據(jù)則是指存儲(chǔ)在本地?cái)?shù)據(jù)庫中的生產(chǎn)、營銷和財(cái)務(wù)等系統(tǒng)的數(shù)據(jù)。本地?cái)?shù)據(jù)按照數(shù)據(jù)產(chǎn)生的時(shí)間又可以劃分為兩部分,分別是歷史數(shù)據(jù)與實(shí)時(shí)數(shù)據(jù)。歷史數(shù)據(jù)是指系統(tǒng)在運(yùn)行過程中遺存下來的數(shù)據(jù),其數(shù)據(jù)量隨系統(tǒng)運(yùn)行時(shí)間的增加而增長(zhǎng);實(shí)時(shí)數(shù)據(jù)是指最近一個(gè)單位時(shí)間周期(月、周、日、小時(shí)等)內(nèi)產(chǎn)生的數(shù)據(jù)。在數(shù)據(jù)分析過程中,具體使用哪種數(shù)據(jù)獲取方式,需要依據(jù)需求分析的結(jié)果而定。數(shù)據(jù)分析的流程2.數(shù)據(jù)獲取數(shù)據(jù)預(yù)處理是指對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)合并、數(shù)據(jù)清洗、數(shù)據(jù)標(biāo)準(zhǔn)化和數(shù)據(jù)變換等操作,并將數(shù)據(jù)用于分析建模的這一過程的總稱。其中,數(shù)據(jù)合并可以將多張互相關(guān)聯(lián)的表格合并為一張;數(shù)據(jù)清洗可以去除重復(fù)、缺失、異常、不一致的數(shù)據(jù);數(shù)據(jù)標(biāo)準(zhǔn)化可以去除特征間的量綱差異;數(shù)據(jù)變換則可以通過離散化、啞變量處理等技術(shù)滿足后期分析與建模的數(shù)據(jù)要求。在數(shù)據(jù)分析的過程中,數(shù)據(jù)預(yù)處理的各個(gè)過程互相交叉,并沒有明確的先后順序。數(shù)據(jù)分析的流程3.數(shù)據(jù)預(yù)處理分析與建模是指通過對(duì)比分析、分組分析、交叉分析、回歸分析等分析方法,以及聚類模型、分類模型、關(guān)聯(lián)規(guī)則、智能推薦等模型與算法,發(fā)現(xiàn)數(shù)據(jù)中有價(jià)值的信息,并得出結(jié)論的過程。在數(shù)據(jù)分析過程中,具體使用哪種數(shù)據(jù)獲取方式,需要依據(jù)需求分析的結(jié)果而定。分析與建模的方法按照目標(biāo)不同可以分為幾大類。如果分析目標(biāo)是描述客戶行為模式的,那么可以采用描述型數(shù)據(jù)分析方法,同時(shí)還可以考慮關(guān)聯(lián)規(guī)則、序列規(guī)則和聚類模型等。如果分析目標(biāo)是量化未來一段時(shí)間內(nèi)某個(gè)事件發(fā)生概率的,那么可以使用兩大預(yù)測(cè)分析模型,即分類預(yù)測(cè)模型和回歸預(yù)測(cè)模型。在常見的分類預(yù)測(cè)模型中,目標(biāo)特征通常為二元數(shù)據(jù),如欺詐與否、流失與否、信用好壞等。在回歸預(yù)測(cè)模型中,目標(biāo)特征通常為連續(xù)型數(shù)據(jù),常見的有股票價(jià)格預(yù)測(cè)等。數(shù)據(jù)分析的流程4.分析與建模模型評(píng)價(jià)是指對(duì)于已經(jīng)建立的一個(gè)或多個(gè)模型,根據(jù)其模型的類別,使用不同的指標(biāo)評(píng)價(jià)模型性能優(yōu)劣的過程。常用的聚類模型評(píng)價(jià)指標(biāo)有ARI評(píng)價(jià)法(蘭德系數(shù))、AMI評(píng)價(jià)法(互信息)、V-measure評(píng)分、FMI評(píng)價(jià)法和輪廓系數(shù)等。常用的分類模型評(píng)價(jià)指標(biāo)有準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1值(F1Value)、ROC和AUC等。常用的回歸模型評(píng)價(jià)指標(biāo)有平均絕對(duì)誤差、均方誤差、中值絕對(duì)誤差和可解釋方差值等。模型優(yōu)化則是指模型性能在經(jīng)過模型評(píng)價(jià)后已經(jīng)達(dá)到了要求,但在實(shí)際生產(chǎn)環(huán)境應(yīng)用過程中,發(fā)現(xiàn)模型的性能并不理想,繼而對(duì)模型進(jìn)行重構(gòu)與優(yōu)化的過程。多數(shù)情況下,模型優(yōu)化和分析與建模的過程基本一致。數(shù)據(jù)分析的流程5.模型評(píng)價(jià)與優(yōu)化部署是指將數(shù)據(jù)分析結(jié)果與結(jié)論應(yīng)用至實(shí)際生產(chǎn)系統(tǒng)的過程。根據(jù)需求的不同,部署階段可以是一份包含了現(xiàn)狀具體整改措施的數(shù)據(jù)分析報(bào)告,也可以是將模型部署在整個(gè)生產(chǎn)系統(tǒng)的解決方案。在多數(shù)項(xiàng)目中,數(shù)據(jù)分析師提供的是一份數(shù)據(jù)分析報(bào)告或一套解決方案,實(shí)際執(zhí)行與部署的是需求方。數(shù)據(jù)分析的流程6.部署企業(yè)使用數(shù)據(jù)分析解決不同的問題,實(shí)際應(yīng)用的數(shù)據(jù)分析場(chǎng)景主要分為客戶分析、營銷分析、社交媒體分析、網(wǎng)絡(luò)安全、設(shè)備管理、交通物流分析和欺詐行為檢測(cè)7類??蛻舴治鲋饕歉鶕?jù)客戶的基本數(shù)據(jù)信息進(jìn)行商業(yè)行為分析,首先界定目標(biāo)客戶,根據(jù)客戶的需求、目標(biāo)客戶的性質(zhì)、所處行業(yè)的特征和客戶的經(jīng)濟(jì)狀況等基本信息,使用統(tǒng)計(jì)分析方法和預(yù)測(cè)驗(yàn)證法分析目標(biāo)客戶,提高銷售效率。其次了解客戶的采購過程,根據(jù)客戶采購類型、采購性質(zhì)進(jìn)行分類分析,制定不同的營銷策略。根據(jù)已有的客戶特征進(jìn)行客戶特征分析、客戶忠誠度分析、客戶注意力分析、客戶營銷分析和客戶收益分析。通過有效的客戶分析能夠掌握客戶的具體行為特征,將客戶細(xì)分,使得運(yùn)營策略達(dá)到最優(yōu),提升企業(yè)整體效益等。數(shù)據(jù)分析應(yīng)用場(chǎng)景1.客戶分析(CustomerAnalytics)營銷分析囊括了產(chǎn)品分析、價(jià)格分析、渠道分析、廣告與促銷分析這4類分析。產(chǎn)品分析主要是競(jìng)爭(zhēng)產(chǎn)品分析,通過對(duì)競(jìng)爭(zhēng)產(chǎn)品的分析制定自身產(chǎn)品策略。價(jià)格分析又可以分為成本分析和售價(jià)分析。成本分析的目的是降低不必要的成本;售價(jià)分析的目的是制定符合市場(chǎng)的價(jià)格。渠道分析是指對(duì)產(chǎn)品的銷售渠道進(jìn)行分析,確定最優(yōu)的渠道配比。廣告與促銷分析則能夠結(jié)合客戶分析,實(shí)現(xiàn)銷量的提升、利潤(rùn)的增加。數(shù)據(jù)分析應(yīng)用場(chǎng)景2.營銷分析(MarketingAnalytics)社交媒體分析是以不同的社交媒體渠道生成的內(nèi)容為基礎(chǔ),實(shí)現(xiàn)不同社交媒體的用戶分析、訪問分析和互動(dòng)分析等。用戶分析主要根據(jù)用戶注冊(cè)信息、登錄平臺(tái)的時(shí)間點(diǎn)和平時(shí)發(fā)表的內(nèi)容等用戶數(shù)據(jù),分析用戶個(gè)人畫像和行為特征。訪問分析則是通過用戶平時(shí)訪問的內(nèi)容分析用戶的興趣愛好,進(jìn)而分析潛在的商業(yè)價(jià)值?;?dòng)分析根據(jù)互相關(guān)注對(duì)象的行為預(yù)測(cè)該對(duì)象未來的某些行為特征。社交媒體分析還能為情感和輿情監(jiān)督提供豐富的資料。數(shù)據(jù)分析應(yīng)用場(chǎng)景3.社交媒體分析(SocialMediaAnalytics)大規(guī)模網(wǎng)絡(luò)安全事件的發(fā)生,例如,2017年5月席卷全球的WannaCry病毒,讓企業(yè)意識(shí)到網(wǎng)絡(luò)攻擊發(fā)生時(shí)預(yù)先快速識(shí)別的重要性。傳統(tǒng)的網(wǎng)絡(luò)安全主要依靠靜態(tài)防御,處理病毒的主要流程是發(fā)現(xiàn)威脅、分析威脅和處理威脅,這種情況下,往往只在威脅發(fā)生以后系統(tǒng)才能做出反應(yīng)。新型的病毒防御系統(tǒng)可使用數(shù)據(jù)分析技術(shù),建立潛在攻擊識(shí)別分析模型,監(jiān)測(cè)大量網(wǎng)絡(luò)活動(dòng)數(shù)據(jù)和相應(yīng)的訪問行為,識(shí)別可能進(jìn)行入侵的可疑模式,做到未雨綢繆。在2016年11月7日第十二屆全國人民代表大會(huì)中通過了《中華人民共和國網(wǎng)絡(luò)安全法》,進(jìn)一步全面推進(jìn)國家各方面工作法治化。同時(shí)個(gè)人也需學(xué)會(huì)識(shí)別和防范網(wǎng)絡(luò)風(fēng)險(xiǎn),提高自身的網(wǎng)絡(luò)安全意識(shí)。數(shù)據(jù)分析應(yīng)用場(chǎng)景4.網(wǎng)絡(luò)安全(MassiveCybersecurity)設(shè)備管理同樣是企業(yè)關(guān)注的重點(diǎn)。設(shè)備維修一般采用標(biāo)準(zhǔn)修理法、定期修理法和檢查后修理法等方法。在這兩種辦法中,標(biāo)準(zhǔn)修理法可能導(dǎo)致設(shè)備的過度維修,進(jìn)而產(chǎn)生較高的修理費(fèi)用。而檢查后修理法雖然解決了高成本的問題,但它需要繁瑣的準(zhǔn)備工作,導(dǎo)致設(shè)備停機(jī)時(shí)間延長(zhǎng)。目前企業(yè)能夠通過物聯(lián)網(wǎng)技術(shù)收集和分析設(shè)備上的數(shù)據(jù)流,包括連續(xù)用電、零部件溫度、環(huán)境濕度和污染物顆粒等多種潛在特征,建立設(shè)備管理模型,從而預(yù)測(cè)設(shè)備故障,合理安排預(yù)防性的維護(hù),以確保設(shè)備正常工作,降低因設(shè)備故障帶來的安全風(fēng)險(xiǎn)。數(shù)據(jù)分析應(yīng)用場(chǎng)景5.設(shè)備管理(FacilityManagement)物流是物品從供應(yīng)地向接收地的實(shí)體流動(dòng),是將運(yùn)輸、儲(chǔ)存、裝卸搬運(yùn)、包裝、流通加工、配送和信息處理等功能有機(jī)結(jié)合起來從而實(shí)現(xiàn)用戶要求的過程。用戶可以通過業(yè)務(wù)系統(tǒng)和GPS定位系統(tǒng)獲得數(shù)據(jù),使用數(shù)據(jù)構(gòu)建交通狀況預(yù)測(cè)分析模型,有效預(yù)測(cè)實(shí)時(shí)路況、物流狀況、車流量、客流量和貨物吞吐量,進(jìn)而提前補(bǔ)貨,制定庫存管理策略。數(shù)據(jù)分析應(yīng)用場(chǎng)景6.交通物流分析(TransportandLogisticsAnalytics)身份信息泄露及盜用事件逐年增長(zhǎng),隨之而來的是欺詐行為和交易的增多。公安機(jī)關(guān)、各大金融機(jī)構(gòu)、電信部門可利用用戶基本信息、用戶交易信息和用戶通話短信信息等數(shù)據(jù),識(shí)別可能發(fā)生的潛在欺詐交易,做到提前預(yù)防、未雨綢繆。以大型金融機(jī)構(gòu)為例,通過分類模型分析方法對(duì)非法集資和洗錢的邏輯路徑進(jìn)行分析,找到其行為特征。聚類模型分析方法可以分析相似價(jià)格的運(yùn)動(dòng)模式。例如,對(duì)股票進(jìn)行聚類,可能發(fā)現(xiàn)關(guān)聯(lián)交易及內(nèi)幕交易的可疑信息。關(guān)聯(lián)規(guī)則分析方法可以監(jiān)控多個(gè)用戶的關(guān)聯(lián)交易行為,為發(fā)現(xiàn)跨賬號(hào)協(xié)同的金融詐騙行為提供依據(jù)。數(shù)據(jù)分析應(yīng)用場(chǎng)景7.欺詐行為檢測(cè)(FraudDetection)1Python數(shù)據(jù)分析的工具目錄認(rèn)識(shí)數(shù)據(jù)分析2安裝Python的Anaconda發(fā)行版3JupyterNotebook常用功能4目前主流的數(shù)據(jù)分析語言主要有Python、R、MATLAB這3種。其中,Python具有豐富和強(qiáng)大的庫,同時(shí)Python常被稱為膠水語言,能夠?qū)⑹褂闷渌Z言制作的各種模塊(尤其是C/C++)輕松地連接在一起,是一門更易學(xué)、更嚴(yán)謹(jǐn)?shù)某绦蛟O(shè)計(jì)語言。R語言通常用于統(tǒng)計(jì)分析、繪圖。R是屬于GNU系統(tǒng)的一個(gè)自由、免費(fèi)、源代碼開放的軟件。MATLAB的作用是進(jìn)行矩陣運(yùn)算、繪制函數(shù)與數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面和連接其他編程語言的程序等,其主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通信、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域。數(shù)據(jù)分析常用工具Python、R、MATLAB這3種語言均可以進(jìn)行數(shù)據(jù)分析。表1-1從語言學(xué)習(xí)難易程度、使用場(chǎng)景、第三方支持、流行領(lǐng)域和軟件成本5方面比較了Python、R、MATLAB這3種數(shù)據(jù)分析工具。數(shù)據(jù)分析常用工具PythonRMATLAB語言學(xué)習(xí)難易程度接口統(tǒng)一,學(xué)習(xí)曲線平緩接口眾多,學(xué)習(xí)曲線陡峭自由度大,學(xué)習(xí)曲線較為平緩使用場(chǎng)景數(shù)據(jù)分析、機(jī)器學(xué)習(xí)、矩陣運(yùn)算、科學(xué)數(shù)據(jù)可視化、數(shù)字圖像處理等統(tǒng)計(jì)分析、機(jī)器學(xué)習(xí)、科學(xué)數(shù)據(jù)可視化等矩陣運(yùn)算、數(shù)值分析、科學(xué)數(shù)據(jù)可視化、機(jī)器學(xué)習(xí)、符號(hào)計(jì)算、數(shù)字圖像處理、數(shù)字信號(hào)處理等第三方支持擁有大量的第三方庫,能夠簡(jiǎn)便地調(diào)用C、C++、Fortran、Java等其他程序語言擁有大量的包,能夠調(diào)用C、C++、Fortran、Java等其他程序語言擁有大量專業(yè)的工具箱,在新版本中加入了對(duì)C、C++、Java的支持流行領(lǐng)域工業(yè)界>學(xué)術(shù)界工業(yè)界≈學(xué)術(shù)界工業(yè)界≤學(xué)術(shù)界軟件成本開源免費(fèi)開源免費(fèi)商業(yè)收費(fèi)語法簡(jiǎn)單精練。對(duì)于初學(xué)者來說,比起其他編程語言,Python更容易上手。含有大量功能強(qiáng)大的庫。結(jié)合在編程方面的強(qiáng)大實(shí)力,可以只使用Python這一種語言去構(gòu)建以數(shù)據(jù)為中心的應(yīng)用程序。功能強(qiáng)大。從特性觀點(diǎn)來看,Python是一個(gè)混合體。豐富的工具集使Python介于傳統(tǒng)的腳本語言和系統(tǒng)語言之間。Python不僅具備所有腳本語言簡(jiǎn)單和易用的特點(diǎn),而且提供了編譯語言所具有的高級(jí)軟件工程工具。研究、原型構(gòu)建和構(gòu)建生產(chǎn)系統(tǒng)。研究人員和工程技術(shù)人員使用同一種編程工具,會(huì)給企業(yè)帶來非常顯著的組織效益,并降低企業(yè)的運(yùn)營成本。Python是一門膠水語言。Python程序能夠以多種方式輕易地與其他語言的組件“粘接”在一起。例如,Python的C語言API可以幫助Python程序靈活地調(diào)用C程序,這意味著用戶可以根據(jù)需要給Python程序添加功能或在其他環(huán)境系統(tǒng)中使用Python。Python數(shù)據(jù)分析的優(yōu)勢(shì)1.NumPyNumPy是NumericalPython的簡(jiǎn)稱,是一個(gè)Python科學(xué)計(jì)算的基礎(chǔ)包。NumPy主要提供了以下內(nèi)容??焖俑咝У亩嗑S數(shù)組對(duì)象ndarray。對(duì)數(shù)組執(zhí)行元素級(jí)計(jì)算和直接對(duì)數(shù)組執(zhí)行數(shù)學(xué)運(yùn)算的函數(shù)。讀/寫硬盤上基于數(shù)組的數(shù)據(jù)集的工具。線性代數(shù)運(yùn)算、傅里葉變換和隨機(jī)數(shù)生成的功能。將C、C++、Fortran代碼集成到Python的工具。Python數(shù)據(jù)分析常用類庫使用Python進(jìn)行數(shù)據(jù)分析時(shí)所用到的類庫主要有NumPy、SciPy、pandas、Matplotlib、seaborn、pyecharts、scikit-learn等。除了為Python提供快速的數(shù)組處理能力外,NumPy在數(shù)據(jù)分析方面還有另外一個(gè)主要作用,即作為算法之間傳遞數(shù)據(jù)的容器。對(duì)于數(shù)值型數(shù)據(jù),使用NumPy數(shù)組存儲(chǔ)和處理數(shù)據(jù)要比使用內(nèi)置的Python數(shù)據(jù)結(jié)構(gòu)高效得多。此外,由低級(jí)語言(如C和Fortran)編寫的庫可以直接操作NumPy數(shù)組中數(shù)據(jù),無須進(jìn)行任何數(shù)據(jù)復(fù)制工作。Python數(shù)據(jù)分析常用類庫SciPy是基于Python的開源代碼,是一組專門解決科學(xué)計(jì)算中各種標(biāo)準(zhǔn)問題域的模塊的集合,特別是與NumPy、Matplotlib和pandas這些核心包一起使用時(shí)。SciPy主要包含了8個(gè)模塊,不同的模塊有不同的應(yīng)用,如用于插值、積分、優(yōu)化、處理圖像和特殊函數(shù)等。Python數(shù)據(jù)分析常用類庫2.SciPy模塊名稱簡(jiǎn)介egrate數(shù)值積分和微分方程求解器scipy.linalg擴(kuò)展了由numpy.linalg提供的線性代數(shù)求解和矩陣分解功能scipy.optimize函數(shù)優(yōu)化器(最小化器)以及根查找算法scipy.signal信號(hào)處理工具scipy.sparse稀疏矩陣和稀疏線性系統(tǒng)求解器scipy.specialSPECFUN[這是一個(gè)實(shí)現(xiàn)了許多常用數(shù)學(xué)函數(shù)(如伽馬函數(shù))的Fortran庫]的包裝器scipy.stats檢驗(yàn)連續(xù)和離散概率分布(如密度函數(shù)、采樣器、連續(xù)分布函數(shù)等)的函數(shù)與方法、各種統(tǒng)計(jì)檢驗(yàn)的函數(shù)與方法,以及各類描述性統(tǒng)計(jì)的函數(shù)與方法pandas是Python的數(shù)據(jù)分析核心庫,最初被作為金融數(shù)據(jù)分析工具而開發(fā)出來。pandas為時(shí)間序列分析提供了很好的支持,它提供了一系列能夠快速、便捷地處理結(jié)構(gòu)化數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和函數(shù)。Python之所以成為強(qiáng)大而高效的數(shù)據(jù)分析環(huán)境與它息息相關(guān)。pandas兼具NumPy高性能的數(shù)組計(jì)算功能以及電子表格和關(guān)系型數(shù)據(jù)庫(如MySQL)靈活的數(shù)據(jù)處理功能。它提供了復(fù)雜精細(xì)的索引功能,以便完成重塑、切片與切塊、聚合和選取數(shù)據(jù)子集等操作。pandas將是本書中使用的主要工具。Python數(shù)據(jù)分析常用類庫3.pandasMatplotlib是較為流行的用于繪制數(shù)據(jù)圖表的Python庫,是Python的2D繪圖庫。Matplotlib最初由約翰·亨特(JohnD.Hunter,JDH)創(chuàng)建,目前由一個(gè)龐大的開發(fā)團(tuán)隊(duì)維護(hù)。Matplotlib的操作比較容易,用戶只需用幾行代碼即可生成直方圖、功率譜圖、條形圖、錯(cuò)誤圖和散點(diǎn)圖等圖形。Matplotlib提供了pylab的模塊,其中包括了NumPy和pyplot中許多常用的函數(shù),方便用戶快速進(jìn)行計(jì)算和繪圖。Matplotlib與IPython的結(jié)合,提供了一種非常好用的交互式數(shù)據(jù)繪圖環(huán)境。繪制的圖表也是交互式的,讀者可以利用繪圖窗口中工具欄中的相應(yīng)工具放大圖表中的某個(gè)區(qū)域,或?qū)φ麄€(gè)圖表進(jìn)行平移瀏覽。Python數(shù)據(jù)分析常用類庫4.Matplotlibseaborn是基于Matplotlib的圖形可視化Python庫,它提供了一種高度交互式界面,便于用戶能夠做出各種有吸引力的統(tǒng)計(jì)圖表。seaborn是在Matplotlib的基礎(chǔ)上進(jìn)行了更高級(jí)的API封裝,使得作圖更加容易。seaborn不需要了解大量的底層代碼,即可使圖形變得精致。在大多數(shù)情況下,使用seaborn能做出很具有吸引力的圖,而使用Matplotlib能制作具有更多特色的圖。因此,可將seaborn視為Matplotlib的補(bǔ)充,而不是替代物。同時(shí),seaborn能高度兼容NumPy與pandas數(shù)據(jù)結(jié)構(gòu)以及scipy與statsmodels等統(tǒng)計(jì)模式,可以在很大程度上幫助用戶實(shí)現(xiàn)數(shù)據(jù)可視化。Python數(shù)據(jù)分析常用類庫5.seabornEcharts是一個(gè)由百度開源的數(shù)據(jù)可視化工具,憑借著良好的交互性,精巧的圖表設(shè)計(jì),得到了眾多開發(fā)者的認(rèn)可。而Python是一門富有表達(dá)力的語言,很適合用于數(shù)據(jù)處理。pyecharts是Python與Echarts的結(jié)合。pyecharts可以展示動(dòng)態(tài)交互圖,對(duì)于展示數(shù)據(jù)更方便,當(dāng)鼠標(biāo)懸停在圖上時(shí),即可顯示數(shù)值、標(biāo)簽等。pyecharts支持主流Notebook環(huán)境,如JupyterNotebook、JupyterLab等;可輕松集成至Flask、Django等主流Web框架;高度靈活的配置項(xiàng),可輕松搭配出精美的圖表。pyecharts囊括了30多種常見圖表,如Bar(柱形圖/條形圖)、Boxplot(箱形圖)、Funnel(漏斗圖)、Gauge(儀表盤)、Graph(關(guān)系圖)、HeatMap(熱力圖)、Radar(雷達(dá)圖)、Sankey(?;鶊D)、Scatter(散點(diǎn)圖)、WordCloud(詞云圖)等。Python數(shù)據(jù)分析常用類庫6.pyechartsscikit-learn是一個(gè)簡(jiǎn)單有效的數(shù)據(jù)挖掘和數(shù)據(jù)分析工具,可以供用戶在各種環(huán)境下重復(fù)使用。scikit-learn建立在NumPy、SciPy和Matplotlib基礎(chǔ)之上,對(duì)一些常用的算法方法進(jìn)行了封裝。目前,scikit-learn的基本模塊主要有數(shù)據(jù)預(yù)處理、模型選擇、分類、聚類、數(shù)據(jù)降維和回歸6個(gè)。在數(shù)據(jù)量不大的情況下,scikit-learn可以解決大部分問題。對(duì)算法不精通的用戶在執(zhí)行建模任務(wù)時(shí),并不需要自行編寫所有的算法,只需要簡(jiǎn)單地調(diào)用scikit-learn庫里的模塊即可。Python數(shù)據(jù)分析常用類庫7.scikit-learn1Python數(shù)據(jù)分析的工具目錄認(rèn)識(shí)數(shù)據(jù)分析2安裝Python的Anaconda發(fā)行版3JupyterNotebook常用功能4Python擁有NumPy、SciPy、pandas、Matplotlib、seaborn、pyecharts和scikit-learn等功能齊全、接口統(tǒng)一的庫,能為數(shù)據(jù)分析工作提供極大的便利。庫的管理和版本問題,使得數(shù)據(jù)分析人員并不能夠?qū)W⒂跀?shù)據(jù)分析,而是將大量的時(shí)間花費(fèi)在與環(huán)境配置相關(guān)的問題上?;谏鲜鲈颍珹naconda發(fā)行版應(yīng)運(yùn)而生。Anaconda發(fā)行版Python預(yù)裝了150個(gè)以上的常用Packages,囊括了數(shù)據(jù)分析常用的NumPy、SciPy、Matplotlib、seaborn、pyecharts、pandas、scikit-learn庫,使得數(shù)據(jù)分析人員能夠更加順暢、專注地使用Python解決數(shù)據(jù)分析相關(guān)問題。推薦數(shù)據(jù)分析初學(xué)者(尤其是Windows系統(tǒng)用戶)安裝此Python發(fā)行版。只需要到Anaconda官方網(wǎng)站下載適合自身的安裝包即可。Python的Anaconda發(fā)行版Python的Anaconda發(fā)行版主要有以下幾個(gè)特點(diǎn)。包含了眾多流行的科學(xué)、數(shù)學(xué)、工程和數(shù)據(jù)分析的Python庫。完全開源和免費(fèi)。額外的加速和優(yōu)化是收費(fèi)的,但對(duì)于學(xué)術(shù)用途,可以申請(qǐng)免費(fèi)的License。全平臺(tái)支持Linux、Windows、Mac;支持Python2.7、3.5、3.6、3.7、3.8、3.9、3.10、3.11等版本,可自由切換。Python的Anaconda發(fā)行版進(jìn)入Anaconda官方網(wǎng)站,下載適合Windows系統(tǒng)的Anaconda安裝包(本書將使用Anaconda32024.02-1)。安裝Anaconda的具體步驟如下。雙擊已下載好的Anaconda安裝包,再單擊“Next”按鈕進(jìn)入下一步。在Windows系統(tǒng)中安裝Anaconda單擊“IAgree”按鈕,同意上述協(xié)議并進(jìn)入下一步。在Windows系統(tǒng)中安裝Anaconda選擇圖中“AllUsers(requiresadminprivileges)”單選按鈕,單擊“Next”進(jìn)入下一步。在Windows系統(tǒng)中安裝Anaconda單擊“Browse”按鈕,選擇在指定的路徑安裝Anaconda,選擇完成后單擊“Next”按鈕,進(jìn)入下一步。在Windows系統(tǒng)中安裝Anaconda3個(gè)復(fù)選框分別代表創(chuàng)建“開始”菜單快捷方式、將Anaconda3注冊(cè)為系統(tǒng)Python3.11、清除包緩存。全部勾選后,單擊“Install”按鈕,等待安裝結(jié)束。在Windows系統(tǒng)中安裝Anaconda完成安裝后單擊“Next”按鈕進(jìn)入下一步。在Windows系統(tǒng)中安裝Anaconda完成安裝后單擊“Next”按鈕進(jìn)入下一步。單擊“Finish”按鈕,即可完成安裝。在Windows系統(tǒng)中安裝Anaconda1Python數(shù)據(jù)分析的工具目錄認(rèn)識(shí)數(shù)據(jù)分析2安裝Python的Anaconda發(fā)行版3JupyterNotebook常用功能4jupyterNotebook(此前被稱為IPythonNotebook)是一個(gè)交互式筆記本,支持運(yùn)行40多種編程語言,其本質(zhì)上是一個(gè)支持實(shí)時(shí)代碼、數(shù)學(xué)方程、可視化和Markdown的Web應(yīng)用程序。對(duì)于數(shù)據(jù)分析,JupyterNotebook最大的優(yōu)點(diǎn)是可以重現(xiàn)整個(gè)分析過程,并將說明文字、代碼、圖表、公式和結(jié)論都整合在一個(gè)文檔中。用戶可以通過電子郵件、Dropbox、GitHub和JupyterNotebookViewer將分析結(jié)果分享給其他人。Anaconda中除了內(nèi)置了JupyterNotebook之外,還內(nèi)置了Jupyterlab、Spyder等工具,讀者可根據(jù)自己的需求選擇合適的工具,本書將主要介紹JupyterNotebook的使用。JupyterNotebook常用功能

Anaconda安裝完成后,在系統(tǒng)環(huán)境變量中配置python.exe和Scripts。環(huán)境變量配置完成后,在Windows系統(tǒng)下的命令行指示符窗口中,即可啟動(dòng)JupyterNotebook。JupyterNotebook的基本功能1.啟動(dòng)JupyterNotebook打開JupyterNotebook以后會(huì)在系統(tǒng)默認(rèn)的瀏覽器中出現(xiàn)右圖的界面。單擊右上方的“New”下拉按鈕,出現(xiàn)下拉列表。JupyterNotebook的基本功能2.新建一個(gè)Notebook

在“New”下拉列表中選擇需要?jiǎng)?chuàng)建的Notebook類型。其中,“Notebook”表示新建Notebook類型文件,“Terminal”表示打開終端,“Console”表示打開控制臺(tái),“NewFile”表示新建純文本文件,“NewFolder”表示新建文件夾。選擇“Notebook”選項(xiàng),進(jìn)入Python腳本編輯界面。JupyterNotebook的基本功能JupyterNotebook中的Notebook文檔由一系列單元(Cell)構(gòu)成,主要有以下兩種形式的單元,在JupyterNotebook中的形式。JupyterNotebook的基本功能3.JupyterNotebook的界面及其構(gòu)成代碼單元。代碼單元是讀者編寫代碼的地方,通過按“Shift+Enter”組合鍵運(yùn)行代碼,其結(jié)果顯示在本單元下方。代碼單元左邊有“In[]:”編號(hào),方便使用者查看代碼的執(zhí)行次序。Markdown單元。Markdown單元可對(duì)文本進(jìn)行編輯,采用Markdown的語法規(guī)范,可以設(shè)置文本格式,插入鏈接、圖片甚至數(shù)學(xué)公式。同樣,按“Shift+Enter”組合鍵可運(yùn)行Markdown單元,顯示格式化的文本。JupyterNotebook的基本功能JupyterNotebook編輯界面類似于Linux的VIM編輯器界面,在Notebook中也有兩種模式,其模式如下。編輯模式。用于編輯文本和代碼。選中單元并按“Enter”鍵進(jìn)入編輯模式,此時(shí)單元顯示藍(lán)色邊框。命令模式。用于執(zhí)行鍵盤輸入的快捷命令。通過按“Esc”鍵進(jìn)入命令模式,此時(shí)單元顯示灰色邊框。JupyterNotebook的基本功能

如果要使用快捷鍵,那么首先按“Esc”鍵進(jìn)入命令模式,然后按相應(yīng)的鍵實(shí)現(xiàn)對(duì)文檔的操作。例如,切換到代碼單元按“Y”鍵,切換到Markdown單元按“M”鍵,在本單元的下方增加一單元按“B”鍵,查看所有快捷命令按“Ctrl+Shift+H”鍵。JupyterNotebook的基本功能在JupyterNotebook中,可以使用Markdown進(jìn)行文本標(biāo)記,以便用戶查看。同時(shí)JupyterNotebook還可以將Notebook導(dǎo)出形成HTML、PDF等多種格式。Markdown是一種可以使用普通文本編輯器編寫的標(biāo)記語言,通過簡(jiǎn)單的標(biāo)記語法,便可以使普通文本內(nèi)容具有一定的格式。JupyterNotebook的Markdown單元功能較多,下面將從標(biāo)題、列表、字體、表格和數(shù)學(xué)公式編輯5個(gè)方面進(jìn)行介紹。JupyterNotebook的高級(jí)功能1.Markdown標(biāo)題是標(biāo)明文章和作品等內(nèi)容的簡(jiǎn)短語句。讀者寫報(bào)告或?qū)懻撐臅r(shí),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論