Python商務數(shù)據(jù)分析與應用(AIGC版 微課版)課件 第一二三章:Python基礎知識、Python基礎模塊、Python常用庫_第1頁
Python商務數(shù)據(jù)分析與應用(AIGC版 微課版)課件 第一二三章:Python基礎知識、Python基礎模塊、Python常用庫_第2頁
Python商務數(shù)據(jù)分析與應用(AIGC版 微課版)課件 第一二三章:Python基礎知識、Python基礎模塊、Python常用庫_第3頁
Python商務數(shù)據(jù)分析與應用(AIGC版 微課版)課件 第一二三章:Python基礎知識、Python基礎模塊、Python常用庫_第4頁
Python商務數(shù)據(jù)分析與應用(AIGC版 微課版)課件 第一二三章:Python基礎知識、Python基礎模塊、Python常用庫_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第1章

Python基礎知識SOUTHWESTERNUNIVERSITYOFFINANCEANDECONOMICS嚴謹勤儉求實開拓01Python概述02Python中的數(shù)據(jù)結構03控制流語句04函數(shù)05實訓Part1Python概述嚴謹勤儉求實開拓01Python概述Python是一種高級編程語言特點簡潔性:語法類似于英語,易于理解和編寫可讀性:可讀性高,有助于團隊協(xié)作和后期維護可擴展性:可嵌入其他語言編寫的程序中,易于擴展開源:擁有活躍的社區(qū)支持,不斷有新的庫和框架推出跨平臺:Python程序可以在多種操作系統(tǒng)上運行豐富的庫:Python標準庫提供了便捷的訪問文件系統(tǒng)、系統(tǒng)調用、sockets等低級網絡交互接口Python以語法清晰和代碼可讀性高而聞名,其強大的數(shù)據(jù)處理能力、簡潔的語法和豐富的庫支持,使其成為了企業(yè)人員進行數(shù)據(jù)分析的重要工具Python學習Python+AIGC:智能編程助手DeepSeek-Coder深度融合了AIGC技術,能夠通過自然語言交互快速生成高質量的Python代碼。Part2Python中的數(shù)據(jù)結構嚴謹勤儉求實開拓00Python中的數(shù)據(jù)結構基礎數(shù)據(jù)類型組合數(shù)據(jù)類型可迭代對象序列映射無序01列表定義:一個容器數(shù)據(jù)結構,用于存儲一組有序、可變的元素,具有可變性(可增刪改元素)、索引和切片等特性列表沒有長度限制,元素類型可以不同列表的長度和內容是可變的,可自由對列表中數(shù)據(jù)項進行增加、刪除或替換列表屬于序列類型,支持成員關系操作符(in)、長度計算函數(shù)(len())、分片([])列表可以同時使用正向遞增序號和反向遞減序號,可以采用標準的比較操作符(<、<=、==、!=、>=、>)進行比較[‘a’,‘b’,‘c’,d][]用于標記列表的起始‘’用于定義字符串,包裹字符串內容元素:列表中的單個成員,每個元素占據(jù)列表中的一個位置每個元素用逗號隔開元素可以是任意數(shù)據(jù)類型(如整數(shù)、字符串、列表、字典等)01列表列表相關的常用方法ls=[0,1,2,3,4,5,6,7,8,9]dells[2:8:3]print(ls)#輸出[0,1,3,4,6,7,8,9]ls=[1,2,3]lt=[4,5]ls+=ltprint(ls)#輸出[1,2,3,4,5]ls=[1,2,3,4,5]ls.reverse()#直接修改原列表print(ls)#輸出[5,4,3,2,1]ls=[1,2,3]new_ls=ls.copy()#創(chuàng)建淺拷貝ls=[10,20,30,20,40]print(ls.index(20))#輸出:1

(返回第一個匹配項的索引)01列表創(chuàng)建#用list函數(shù),參數(shù)可以是字符串、元組、字典或者集合。但不能是整數(shù)、浮點數(shù)或者布爾值list(‘招商銀行’)→['招','商','銀','行']列表基本操作元素修改stock_info=[‘600000',‘浦發(fā)銀行',11.52,11.54,11.61,11.4]stock_info[4]=12.00stock_info元素刪除stock_info=[‘600000',‘浦發(fā)銀行',11.52,11.54,11.61,11.4]delstock_info[1]stock_info分片賦值stock_info=[‘600000',‘浦發(fā)銀行',0,0,0,0]stock_info[2:]=[11.52,11.54,11.61,11.4]stock_info列表常用函數(shù)extend函數(shù)-次在列表的末端插入多個元素stock_info=[‘600000',‘浦發(fā)銀行']stock_price=[11.52,11.54,11.61,11.4]stock_info.extend(stock_price)stock_info=[‘600000',‘浦發(fā)銀行',11.52,11.54,11.61,11.4]Append函數(shù)-直接把參數(shù)(任何類型)添加到尾部stock_info.append(stock_price)stock_info=[‘600000',‘浦發(fā)銀行',[11.52,11.54,11.61,11.4]]pop函數(shù)-移除并返回指定列表中某個位置的元素my_list=[10,20,30,40,50]last_element=my_list.pop()print("Poppedelement:",last_element)#輸出:Poppedelement:50print("Listafterpop:",my_list)#輸出:Listafterpop:[10,20,30,40]specific_element=my_list.pop(1)print("Poppedelementatindex1:",specific_element)#輸出:Poppedelementatindex1:20print("Listafterpoppingelementatindex1:",my_list)#輸出:Listafterpoppingelementatindex1:[10,30,40]sort方法-排序(默認升序)02元組定義:是一個不可變的序列,意味著一旦創(chuàng)建,其內容不能被修改元組的元素可以是不同類型

的數(shù)據(jù),如整數(shù)、字符串、對象等特點:由于具有不可變性,元組常用于維持數(shù)據(jù)的固定順序,如函數(shù)可以安全地返回多個值而不用擔心調用者會修改這些值。在列表操作中,除了對列表進行原地修改的函數(shù),其他函數(shù)都可以應用在元組中,但與列表不同的是,在元組中使用這些函數(shù),會返回新的元組。03字典定義:字典是Python中唯一內置的、核心的映射類型。字典通過特定的鍵(key),查找對應

的值(value)。鍵和值之間是一一對應的映射關系。特點:無序的;可變的;字典的鍵必須是不可變類型;字典的鍵不能重復;通過鍵來獲取值。{'name':'John','age':30,'city':'NewYork'}用花括號創(chuàng)建:my_dict={'name':'John','age':30,'city':'NewYork'};用dict函數(shù)創(chuàng)建another_dict=dict(name="Alice",age=25,city="Boston")鍵值,鍵和值間用:隔開元素#訪問字典print(my_dict['age'])#輸出30

#修改字典my_dict['age']=28my_dict['profession']='Developer'可以進行迭代

forkeyinmy_dict:print(key)forvalueinmy_dict.values():print(value)forkey,valueinmy_dict.items():print(key,value)值可以是任意類型,可嵌套列表、元組或者字典03字典類似etdefault(),若值不存在,會被添加進字典字典常用函數(shù)04集合定義:集合類型與數(shù)學中的概念是一致的。它是由0個或多個唯一的、不可變的元素構成的無序組合。特點:集合也是通過一對花括號“{}”來標識的。集合支持添加和刪除元素,同時也支持集合間的運算,如并集、交集、差集{1,2,3,4,5}#使用花括號創(chuàng)建集合my_set={1,2,3,4,5}#使用set函數(shù)創(chuàng)建集合,空集合必須使用set()創(chuàng)建another_set=set([2,4,6,8])#添加元素my_set.add(6)#移除元素

my_set.remove(2)my_set.discard(10)#如果元素不存在,不會拋出錯誤04集合集合常用函數(shù)Part3控制流語句嚴謹勤儉求實開拓03控制流語句條件判斷(if-elif-else)循環(huán)(for和while)循環(huán)控制語句

(break和continue)條件判斷語句允許根據(jù)一個條件的真假來決定執(zhí)行哪個代碼塊

循環(huán)用于重復執(zhí)行一段代碼,直到滿足特定條件break用于完全結束環(huán);

continue用于結束當前迭代,并跳轉到循環(huán)的下一次迭代在Python中,控制流語句是用來決定代碼執(zhí)行順序的重要工具??刂屏髡Z句使得程序可以根據(jù)不同的條件執(zhí)行不同的代碼塊,或者多次執(zhí)行某個任務。主要的控制流語句包括條件判斷(if-elif-else)、循環(huán)(for和while)以及循環(huán)控制語句(break和continue)。e.g.while循環(huán)e.g.breakPart4函數(shù)嚴謹勤儉求實開拓04函數(shù)定義語句運行后會新建一個名為repeator的變量名,其類型為function,即函數(shù)。參數(shù)的傳遞過程,實際上是一個賦值的過程。在調用函數(shù)時,調用者的實際參數(shù)自動賦值給函數(shù)的形式參數(shù)變量參數(shù)參數(shù)不可變和可變類型參數(shù):不可變類型包括:整型、浮點型、字符串和元組等??勺冾愋陀校毫斜?、字典和集合等。位置參數(shù):是調用函數(shù)為形參賦值的一種默認方式。實參與形參按照從左到右的位置順序依次賦值關鍵字參數(shù):為了避免位置參數(shù)賦值帶來的混亂,Python允許調用函數(shù)時通過關鍵字參數(shù)的形式指定形參與實參的對應關系。

調用者使用name=value的形式來指定函數(shù)中的哪個形參接受某個值指定默認參數(shù)值指定默認參數(shù)值:在函數(shù)定義時,可以為參數(shù)指定值。這樣當函數(shù)調用者沒有提供對應參數(shù)值時,就可以使用指定的默認值任意數(shù)量參數(shù):Python允許在定義函數(shù)時使用單星號*來收集位置參數(shù),雙星號**收集關鍵字參數(shù)。04函數(shù)變量作用域:Python中規(guī)定每個變量都有它的作用域,即變量只有在作用域范圍內才是可見可用的全局變量和局部變量:全局變量是在所有函數(shù)之外創(chuàng)建的變量,在整個文件范圍內都是可見的,局部變量僅僅在局部作用域內可用,在局部作用域之外,該變量是不可見的,函數(shù)執(zhí)行結束后,局部變量被銷毀。局部變量和全局變量同名的情況下,在局部作用域內,可見的是局部變量,全局變量被暫時隱藏起來關鍵字global語句通常放在函數(shù)體的開始部分,用于申明變量為全局變量局部變量04函數(shù)匿名函數(shù):利用lambda函數(shù)來替代def,創(chuàng)建一個臨時簡單函數(shù)。與def語句不同,lambda是一個表達式。這就使得lambda能夠出現(xiàn)在函數(shù)調用的參數(shù)中。而def語句則不能作為參數(shù)傳遞給函數(shù)用def創(chuàng)建函數(shù)返回參數(shù)x的第二個元素用lambda創(chuàng)建函數(shù)輸出

浦發(fā)銀行04函數(shù)異常處理:.try/except/else語句和try/finally語句嘗試讀取若讀取失敗,捕獲異常并返回空字符串無論是否發(fā)生異常,最終關閉文件句柄Part5實訓嚴謹勤儉求實開拓05實訓請使用本章介紹的知識,按以下步驟編寫相應代碼并進行基本分析步驟一:生成并操作數(shù)據(jù)05實訓請使用本章介紹的知識按以下步驟編寫相應代碼并進行基本分析步驟二:數(shù)據(jù)分類和統(tǒng)計05實訓請使用本章介紹的知識按以下步驟編寫相應代碼并進行基本分析步驟三:數(shù)據(jù)存儲和檢索05實訓請使用本章介紹的知識按以下步驟編寫相應代碼并進行基本分析步驟三:數(shù)據(jù)存儲和檢索THANKSFORYOURLISTENING本章結束感謝聆聽第2章

Python基礎模塊SOUTHWESTERNUNIVERSITYOFFINANCEANDECONOMICS嚴謹勤儉求實開拓01math模塊02random模塊03time和datetime模塊04re模塊05實訓Part1math模塊嚴謹勤儉求實開拓00模塊簡介定義模塊將一些函數(shù)、變量和類等定義保存在一個文件中,它是一種組織和重用代碼的方式,可以將相關的代碼邏輯組織在一個文件中,并通過使用import關鍵字導入模塊的方式在其他程序中使用。模塊使得代碼的管理和維護更加方便,同時也促進了代碼的重用和可擴展性。通過將相關功能封裝在模塊中,可以將復雜的程序分解為更小、更易于理解和維護的部分。這有助于提高代碼的可讀性和可維護性,并且可以在不同的項目中共享和重復使用代碼。Python提供了許多內置模塊,如math、random、data、time、re、sys和os等JUNE12th優(yōu)勢01math模塊math模塊提供了基礎的計算功能數(shù)學常量算術函數(shù)導入模塊01math模塊常見的三角函數(shù)冪函數(shù)和對數(shù)函數(shù)Part2random模塊嚴謹勤儉求實開拓02random模塊定義:random模塊主要用于生成滿足各種分布的偽隨機數(shù),如隨機整數(shù)、浮點數(shù)、選擇隨機項以及隨機化序列等。其包含兩類函數(shù),分別為基本隨機函數(shù),如random()、seed();以及擴展隨機函數(shù),如randrange()、randint()、uniform()、choice()shuffle()等種子數(shù)一般是一個整數(shù),作為偽隨機數(shù)生成算法的初始輸入。相同的種子會生成完全相同的隨機數(shù)序列根據(jù)種子數(shù)a初始化隨機數(shù)生成器生成一個[0.0,1.0)之間的隨機浮點數(shù)基本隨機函數(shù):random()和seed()02random模塊擴展隨機函數(shù)生成指定范圍內特定步長的隨機整數(shù)候選數(shù)為1,3,5生成指定范圍內的隨機整數(shù)生成指定范圍內的隨機浮點數(shù)生成非空序列中的隨機元素生成指定序列元素的隨機排列以beta分布的概率分布返回0到1之間的隨機數(shù)(Beta分布是一種定義在區(qū)間[0,1][0,1]上的連續(xù)概率分布,常用于描述某個事件成功概率的不確定性)Part3time和datetime模塊嚴謹勤儉求實開拓03time和datetime模塊time模塊和datetime模塊都可用于處理時間和日期time模塊用于獲取當前時間,以及執(zhí)行與時間相關的操作,如暫停執(zhí)行、獲取時間戳等datetime模塊則提供了日期和時間的日期對象,可以進行日期和時間的算術運算time模塊使用范例按指定的秒數(shù)使程序休眠若干時間03time和datetime模塊time模塊使用范例03time和datetime模塊datetime模塊區(qū)別:本地當前日期和時間(無時區(qū)信息),相當于等同于datetime.now()(不帶時區(qū))datetime.now()當前日期和時間(可指定時區(qū))根據(jù)指定的時間戳創(chuàng)建datetime對象不同日期或時間之間的差值返回日期時間對象所對應的時間元組Part4re模塊嚴謹勤儉求實開拓04re模塊定義:用于處理字符串的函數(shù)能夠通過定義一串特殊規(guī)則匹配符合的字符,可以用來搜索、替換、分割和匹配字符串特殊字符04re模塊常用函數(shù)04re模塊常用函數(shù)Part5實訓嚴謹勤儉求實開拓05實訓請使用本章介紹的基礎模塊知識按以下步驟編寫相應代碼生成模擬實驗數(shù)據(jù),并進行基本分析。步驟一:生成實驗數(shù)據(jù)05實訓請使用本章介紹的基礎模塊知識按以下步驟編寫相應代碼生成模擬實驗數(shù)據(jù),并進行基本分析。步驟二:數(shù)據(jù)的正則表達式匹配05實訓請使用本章介紹的基礎模塊知識按以下步驟編寫相應代碼生成模擬實驗數(shù)據(jù),并進行基本分析。步驟三:數(shù)據(jù)的異常檢測THANKSFORYOURLISTENING本章結束感謝聆聽第3章

Python常用庫SOUTHWESTERNUNIVERSITYOFFINANCEANDECONOMICS嚴謹勤儉求實開拓01科學技術庫NumPy02數(shù)據(jù)處理庫pandas03數(shù)據(jù)可視化庫Matplotlib04實訓學習目標掌握Numpy多維數(shù)組的創(chuàng)建和操作技巧,能夠進行數(shù)據(jù)處理和計算掌握如何使用Series和DataFrame處理和分析數(shù)據(jù)掌握各種類型的數(shù)據(jù)可視化圖表,有效地展示和傳達數(shù)據(jù)分析的結果引入案例蘋果作為全球知名的電子品牌產品,產品覆蓋范圍廣,使用Python數(shù)據(jù)分析能夠為蘋果帶來很高的經濟效益。在市場分析和趨勢預測方面:對銷量數(shù)據(jù)進行時間序列分析,識別銷售高峰期?;谑袌鲒厔?,可以預測未來產品的需求量和市場動態(tài),從而調整生產計劃和供應鏈管理,確保產品供應與市場需求相匹配。在用戶行為分析和市場定位方面:使用Python分析用戶數(shù)據(jù)(如購買行為、偏好和用戶反饋),可以幫助蘋果公司更好地理解不同用戶群體的需求和偏好。在產品質量和性能分析方面:借助Python的數(shù)據(jù)分析工具,可以收集和分析Mac電腦的性能測試數(shù)據(jù),通過可視化技術識別產品中性能表現(xiàn)不佳的區(qū)域。同時統(tǒng)計不同型號產品的故障率,分析其與生產批次、材料選擇等因素的關系,利用scipy進行假設檢驗,確定故障原因。通過對各個階段進行跟蹤和分析,能夠及時調整設計或生產流程。思考:各個品牌通過短視頻、直播等方式營銷帶貨,企業(yè)獲得運營及銷售信息后應如何分析,哪些數(shù)據(jù)對于企業(yè)提升效益來說最為重要?主要內容3.1NumPyNumPy是Python中用于科學計算的基礎包,提供了強大的多維數(shù)組對象和用于處理這些數(shù)組的函數(shù)3.2pandaspandas是Python中用于數(shù)據(jù)分析和處理的重要庫,它提供了靈活而高效的數(shù)據(jù)結構和數(shù)據(jù)操作工具,使得數(shù)據(jù)的清洗、轉換和分析變得更加簡單和直觀。3.3MatplotlibMatplotlib是Python中最流行的數(shù)據(jù)可視化庫之一,它能夠創(chuàng)建各種類型的靜態(tài)、交互式和動態(tài)圖形,幫助用戶以直觀、美觀的方式呈現(xiàn)數(shù)據(jù)。Part1科學技術庫NumPy嚴謹勤儉求實開拓3.1科學技術庫(NumPy) NumPy是Python的一個開源數(shù)值計算庫,也是Python數(shù)值計算最重要的基礎包,主要用于數(shù)組計算,矩陣運算等。NumPy是在一個連續(xù)的內存塊中存儲數(shù)據(jù),獨立于其他Python內置對象。比起Python的內置序列,NumPy數(shù)組使用的內存更少,可以在整個數(shù)組上執(zhí)行復雜的計算,而不需要Python的for循環(huán)。在數(shù)據(jù)可視化中,NumPy庫非常方便地與其他數(shù)據(jù)可視化工具(如Matplotlib)結合使用,幫助用戶快速高效地進行數(shù)據(jù)處理和可視化。3.1.1創(chuàng)建數(shù)據(jù)組例(1)使用array函數(shù),該函數(shù)可以接受傳入數(shù)據(jù),然后將其轉化為Numpy數(shù)組(2)array()可以將一組等長數(shù)組轉換為n維列表

(3)Numpy提供創(chuàng)建特殊形式組數(shù)的函數(shù)Numpy特點:n維數(shù)組對象(ndaarry),Numpy提供了豐富的數(shù)組處理函數(shù),可以用來創(chuàng)建、操作多維數(shù)組,進行數(shù)據(jù)處理和數(shù)學運算等,在處理大量、復雜的數(shù)據(jù)時這些函數(shù)樂意方便地用于數(shù)據(jù)處理和可視化3.1.2數(shù)學運算NumPy庫提供了多種數(shù)學函數(shù),可以方便地對數(shù)據(jù)進行數(shù)學運算,這些運算函數(shù)可以用于對數(shù)據(jù)進行處理,進而用于數(shù)據(jù)可視化。(1)Numpy中大小相等的數(shù)據(jù)之間的算術運算會應用到元素級(2)Numpy庫中常用的運算函數(shù)①add()函數(shù)用于逐元素求和

②power()函數(shù)對數(shù)組逐元素進行冪運算③round()函數(shù)對每個元素四舍五入到最接近的整數(shù)3.1.2數(shù)學運算Numpy中其他常用的數(shù)學運算函數(shù)及功能3.1.3數(shù)據(jù)過濾和處理NumPy提供了多種函數(shù)用于數(shù)據(jù)的過濾和處理,如where()函數(shù)可以用來選取符合條件的數(shù)據(jù),resize()函數(shù)可以用來改變數(shù)組的大小等。這些函數(shù)能夠幫助用戶對數(shù)據(jù)進行進一步處理,以便更好地展示數(shù)據(jù)。當需要根據(jù)條件從數(shù)組中選擇特定的元素時,可以使用NumPy提供的數(shù)據(jù)過濾函數(shù)。例:①使用np.where()函數(shù)根據(jù)條件選擇元素、提取元素②當需要對數(shù)組進行數(shù)據(jù)過濾時,NumPy提供了一些強大的函數(shù),如使用np.nonzero()函數(shù)找出數(shù)組中非零元素的索引。③使用np.isin()函數(shù)檢查數(shù)組中的元素是否包含在另一個數(shù)組中。3.1.3數(shù)據(jù)過濾和處理Numpy中還包括其他用于數(shù)據(jù)處理的函數(shù)3.1.4數(shù)據(jù)統(tǒng)計Numpy還提供了統(tǒng)計函數(shù),可以用來計算數(shù)據(jù)的統(tǒng)計特性。這些函數(shù)可以幫助用戶對數(shù)據(jù)進行統(tǒng)計分析,找出數(shù)據(jù)的中心趨勢、離散程度、最大最小值等信息,從而更好地理解數(shù)據(jù),為數(shù)據(jù)可視化提供支持。例:使用np.mean()函數(shù)計算數(shù)組的平均值

總的來說,numpy庫在數(shù)據(jù)可視化中提供了豐富的功能和工具,可以幫助用戶更輕松地處理和展示數(shù)據(jù)。同時,Numpy庫的高效性和靈活性也使其成為數(shù)據(jù)處理和可視化領域中的重要工具之一。3.1.4數(shù)據(jù)統(tǒng)計Numpy中其他常用的數(shù)據(jù)處理函數(shù)Part2數(shù)據(jù)處理庫pandas嚴謹勤儉求實開拓3.2數(shù)據(jù)處理庫(pandas)pandas是Python中用于數(shù)據(jù)處理和分析的強大庫,它提供了靈活而高效的數(shù)據(jù)結構和數(shù)據(jù)操作工具,使得數(shù)據(jù)的清洗、轉換和分析變得更加簡單和直觀。pandas的核心數(shù)據(jù)結構包括Series(一維數(shù)組)和DataFrame(二維表格),這兩種數(shù)據(jù)結構能夠輕松處理不同類型的數(shù)據(jù),并且支持各種數(shù)據(jù)操作和分析,例如索引、切片、合并、分組、聚合等。除了數(shù)據(jù)結構之外,pandas還提供了豐富的功能和方法,包括數(shù)據(jù)讀取、數(shù)據(jù)清洗等。借助于這些功能,用戶可以方便地進行數(shù)據(jù)預處理、數(shù)據(jù)探索性分析和建模分析,為實際業(yè)務問題提供可靠的數(shù)據(jù)支持??傊?,pandas是Python數(shù)據(jù)科學領域中不可或缺的重要工具,它為用戶提供了豐富的數(shù)據(jù)處理和分析功能,使得復雜的數(shù)據(jù)操作變得簡單易行。3.2數(shù)據(jù)處理庫(pandas)在使用pandas庫時,首先要安裝pandas庫,可以使用以下命令進行安裝:Pipinstallpandas安裝完成后通過以下命令將pandas庫導入Importpandasaspd將pandas庫導入后可以進行讀取文件的操作,從而獲取數(shù)據(jù)進行分析。

3.2.1pandas的數(shù)據(jù)結構1.SeriesSeries是一種類似于一維數(shù)組的對象,它由一組數(shù)據(jù)(各種NumPy數(shù)據(jù)類型)以及?組與之相關的數(shù)據(jù)標簽(即索引)組成。由一組數(shù)據(jù)產生最簡單的Series:Obj=pd.Series([1,2,3,4,5])2.DataFrameDataFrame是pandas庫提供的一種核心數(shù)據(jù)結構,是一種二維表格型的數(shù)據(jù)結構,別適合處理結構化數(shù)據(jù)。它含有?組有序的列,每列可以是不同的值類型(數(shù)值、字符串、布爾值等)。DataFrame既有?索引也有列索引,其中的數(shù)據(jù)是以?個或多個?維塊存放的。創(chuàng)建DataFrame最常?的?種方式是直接傳入?個由等長列表或Numpy數(shù)組組成的字典3.2.2數(shù)據(jù)讀取1、讀取excel文件(1)語法(2)參數(shù)說明

importpandasaspd#導入pandas庫data=pd.read_excel(io,sheet_name=None,header=None,name=none,index_col=None,usecols=None,skiprows=None,nrows=None)#讀取excel文件 io:讀取的excel文件名,如r'./vote.excel"; sheet_name:excel文件中的sheet表名;

header:哪一行設置為列索引,默認是第一行,即header=0;

names:列索引名;

index_col:使用哪一列作為行索引,默認從0開始;

usecols:讀取表格中哪幾列,必須是位置索引; skiprows:跳過前幾行讀取文件,默認從0開始;nrows:讀取多少行數(shù)據(jù)。3.2.2數(shù)據(jù)讀取2、讀取csv文件(1)語法(2)參數(shù)說明csv文件是以逗號為分隔符的文件,讀取參數(shù)與excel基本類似。文件為gbk格式csv,若不設置encoding參數(shù)程序會報錯。encoding:默認為'utf-8',還有中文編碼‘gbk’、‘gb18030’、‘gb2312’。就漢字而言,三種編碼方式的表示范圍是:GB18030>GBK>GB2312即GBK是GB2312的超集,GB1803又是GBK的超集。一般讀取中文文本可以直接用encoding=GB18030。data=pd.read_cvs(filepath_or_buffer:FilePathOrBuffer,encording=none)3.2.2數(shù)據(jù)讀取3、讀取txt文件(1)語法(2)參數(shù)說明#讀取txt文件data=pd.read_table(filepath_or_buffer:FilePathOrBuffer,sep="\t")txt文件是以指制表符\t為分隔符的文件,參數(shù)與excel、csv基本類似,不同的地方在于必須要指定sep。sep:默認為'\t'。Part3數(shù)據(jù)可視化庫Matplotlib嚴謹勤儉求實開拓3.3數(shù)據(jù)可視化庫(Matplotlib)Matplotlib模塊是一個用于創(chuàng)建圖表和數(shù)據(jù)可視化的功能強大且靈活的工具。它可以用來繪制各種類型的圖表,包括折線圖、散點圖、柱狀圖、餅圖等。在數(shù)據(jù)分析和數(shù)據(jù)可視化領域,Matplotlib模塊經常被用來探索數(shù)據(jù)、展示數(shù)據(jù)分布、比較不同數(shù)據(jù)集之間的關系以及展示趨勢。通過Matplotlib模塊,用戶能夠完全控制圖表的外觀和格式,包括圖表的大小、顏色、線型、標簽等。此外,Matplotlib還具有豐富的功能,例如添加圖例、注釋、網格線等,以幫助用戶更清晰地呈現(xiàn)數(shù)據(jù)。在數(shù)據(jù)可視化中,Matplotlib通常與pandas、Numpy等數(shù)據(jù)處理模塊一起使用。用戶可以通過這些模塊加載數(shù)據(jù),然后使用Matplotlib創(chuàng)建各種圖表來展示數(shù)據(jù)。3.3.1認識Matplotlib在任何繪圖之前,需要創(chuàng)建一個Figure對象才能開始繪圖:pltfig=plt.figure()#創(chuàng)建figure對象在擁有Figure對象之后,必須創(chuàng)建subplot才可以進行繪圖:其中,nrows和ncols分別表示子圖的行數(shù)和列數(shù),index表示在這個網格中子圖的索引(從1開始計數(shù)),**kwargs表示可選參數(shù),例如調整子圖的位置和間距等。常見的屬性包括標題(title)、坐標軸標簽(xlabel和ylabel)、坐標軸范圍(xlim和ylim)等。通過調用這個函數(shù),可以方便地對子圖的各種屬性進行設置。

fig.add_subplot(nrows,ncols,index,**kwargs)

importmatplotlib.pyplotasplt

#導入matplotlib庫,為通常情況下的引入方式:3.3.2繪制線圖(Matplotlib)Matplotlib中最常用的函數(shù)是plot()函數(shù),用來繪制線圖。在繪制圖表時,plot()函數(shù)可以接受x和y坐標數(shù)組作為參數(shù),將這些數(shù)據(jù)點連接起來,并根據(jù)需要添加不同的標記、線條顏色和樣式。importmatplotlib.pyplotasplt#導入matplotlib庫plt.plot(x,y,**kwargs)#接受xy坐標作為參數(shù)命令:x=np.linspace(0,10,100)#0到10等距離的100個點y=np.sin(x)plt.plot(x,y,color='#FF0000')#使用紅色畫線plt.show()3.3.3繪制垂直柱狀圖x表示柱子的橫坐標;height表示柱子的高度;width表示柱子的寬度;bottom表示y軸的起始值;align表示柱子與x軸坐標的對齊方式。importmatplotlib.pyplotasplt#導入matplotlib庫#繪制垂直柱狀圖plt.bar(x,height,width=0.8,bottom=None,align='center',**kwargs)命令:x_date=[5,7,4,6,8]y_date=[10,15,12,16,14]#x表示起始位置plt.bar(x=x_date,height=y_date,width=0.8,color='black’)plt.show()3.3.4繪制水平柱狀圖

y表示柱子在y軸上的坐標;width表示柱子的寬度,即水平長度;height表示柱子的高度,與垂直柱狀圖中的寬度相對應;left表示每個柱子在x方向的起始坐標;align表示柱子同y軸坐標的對齊方式。importmatplotlib.pyplotasplt#導入pandas庫

#繪制水平柱狀圖plt.barh(y,width,height=0.8,left=None,align='center',**kwargs)x_date=[5,7,4,6,8]y_date=[10,15,12,16,14]#x表示起始位置plt.barh(y=x_date,width=y_date,height=0.8,color='grey’)plt.show()3.3.4繪制餅圖

explode表示每個部分距離兩邊區(qū)域的距離,單位為圓半徑的長度;labels表示每個區(qū)域對應的字符串序列;colors表示每個區(qū)域對應的顏色;autopct表示每個區(qū)域對應的數(shù)值,可以是格式化的形式(如"%3.2f%%",后兩個百分號會轉義成一個百分號)或者可以調用函數(shù);pctdistance表示每個區(qū)域中的文字距離圓心的距離,單位為圓半徑;shadow:是bool類型,表示是否添加陰影;l

溫馨提示

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

評論

0/150

提交評論