Python利用Pandas進(jìn)行數(shù)據(jù)分析的方法詳解
Pandas是最流行的用于數(shù)據(jù)分析的 Python 庫(kù)。它提供高度優(yōu)化的性能,后端源代碼完全用C或Python編寫(xiě)。
我們可以通過(guò)以下方式分析 pandas 中的數(shù)據(jù):
1.Series
2.數(shù)據(jù)幀
Series
Series 是 pandas 中定義的一維(1-D)數(shù)組,可用于存儲(chǔ)任何數(shù)據(jù)類(lèi)型。
代碼 #1
創(chuàng)建 Series
# 創(chuàng)建 Series 的程序 # 導(dǎo)入 Panda 庫(kù) import pandas as pd # 使用數(shù)據(jù)和索引創(chuàng)建 Series a = pd.Series(Data, index = Index)
在這里,數(shù)據(jù)可以是:
- 一個(gè)標(biāo)量值,可以是 integerValue、字符串
- 可以是鍵值對(duì)的Python 字典
- 一個(gè)Ndarray
注意:默認(rèn)情況下,索引從 0、1、2、...(n-1) 開(kāi)始,其中 n 是數(shù)據(jù)長(zhǎng)度。
代碼 #2
當(dāng) Data 包含標(biāo)量值時(shí)
# 使用標(biāo)量值創(chuàng)建 Series 的程序 # 數(shù)值數(shù)據(jù) Data =[1, 3, 4, 5, 6, 2, 9] # 使用默認(rèn)索引值創(chuàng)建系列 s = pd.Series(Data) # 預(yù)定義的索引值 Index =['a', 'b', 'c', 'd', 'e', 'f', 'g'] # 創(chuàng)建具有預(yù)定義索引值的系列 si = pd.Series(Data, Index)
輸出:
具有默認(rèn)索引的標(biāo)量數(shù)據(jù)
帶索引的標(biāo)量數(shù)據(jù)
代碼#3
當(dāng)數(shù)據(jù)包含字典時(shí)
# 創(chuàng)建詞典 Series 程序 dictionary ={'a':1, 'b':2, 'c':3, 'd':4, 'e':5} # 創(chuàng)建字典類(lèi)型 Series sd = pd.Series(dictionary)
輸出:
字典類(lèi)型數(shù)據(jù)
代碼 #4
當(dāng) Data 包含 Ndarray
# 創(chuàng)建 ndarray series 的程序 # 定義二維數(shù)組 Data =[[2, 3, 4], [5, 6, 7]] # 創(chuàng)建一系列二維數(shù)組 snd = pd.Series(Data)
輸出:
數(shù)據(jù)作為 Ndarray
數(shù)據(jù)框
DataFrames是 pandas 中定義的二維(2-D)數(shù)據(jù)結(jié)構(gòu),由行和列組成。
代碼 #1
創(chuàng)建 DataFrame
# 創(chuàng)建 DataFrame 的程序 # 導(dǎo)入庫(kù) import pandas as pd # 使用數(shù)據(jù)創(chuàng)建 DataFrame a = pd.DataFrame(Data)
在這里,數(shù)據(jù)可以是:
- 一本或多本詞典
- 一個(gè)或多個(gè)Series
- 2D-numpy Ndarray
代碼 #2
當(dāng)數(shù)據(jù)是字典時(shí)
# 使用兩個(gè)字典創(chuàng)建數(shù)據(jù)框的程序 # 定義字典 1 dict1 ={'a':1, 'b':2, 'c':3, 'd':4} # 定義字典 2 dict2 ={'a':5, 'b':6, 'c':7, 'd':8, 'e':9} # 用 dict1 和 dict2 定義數(shù)據(jù) Data = {'first':dict1, 'second':dict2} # 創(chuàng)建數(shù)據(jù)框 df = pd.DataFrame(Data)
輸出:
帶有兩個(gè)字典的 DataFrame
代碼 #3
當(dāng)數(shù)據(jù)是Series時(shí)
# 創(chuàng)建三個(gè)系列的Dataframe的程序 import pandas as pd # 定義 series 1 s1 = pd.Series([1, 3, 4, 5, 6, 2, 9]) # 定義 series 2 s2 = pd.Series([1.1, 3.5, 4.7, 5.8, 2.9, 9.3]) # 定義 series 3 s3 = pd.Series(['a', 'b', 'c', 'd', 'e']) # 定義 Data Data ={'first':s1, 'second':s2, 'third':s3} # 創(chuàng)建 DataFrame dfseries = pd.DataFrame(Data)
輸出:
三個(gè) Series 的 DataFrame
代碼 #4
當(dāng) Data 為 2D-numpy ndarray注意:在創(chuàng)建 2D 數(shù)組的 DataFrame 時(shí)必須保持一個(gè)約束 - 2D 數(shù)組的維度必須相同。
# 從二維數(shù)組創(chuàng)建 DataFrame 的程序 # 導(dǎo)入庫(kù) import pandas as pd # 定義 2d 數(shù)組 1 d1 =[[2, 3, 4], [5, 6, 7]] # 定義 2d 數(shù)組 2 d2 =[[2, 4, 8], [1, 3, 9]] # 定義 Data Data ={'first': d1, 'second': d2} # 創(chuàng)建 DataFrame df2d = pd.DataFrame(Data)
輸出:
帶有 2d ndarray 的 DataFrame
到此這篇關(guān)于Python利用Pandas進(jìn)行數(shù)據(jù)分析的方法詳解的文章就介紹到這了,更多相關(guān)Python Pandas數(shù)據(jù)分析內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python基礎(chǔ)教程之Pandas數(shù)據(jù)分析庫(kù)詳解
- Python數(shù)據(jù)分析pandas之布爾索引使用詳解
- Python+pandas數(shù)據(jù)分析實(shí)踐總結(jié)
- Python實(shí)踐之使用Pandas進(jìn)行數(shù)據(jù)分析
- Pandas數(shù)據(jù)分析常用函數(shù)的使用
- Python?第三方庫(kù)?Pandas?數(shù)據(jù)分析教程
- Pandas數(shù)據(jù)分析-pandas數(shù)據(jù)框的多層索引
- Pandas數(shù)據(jù)分析之pandas數(shù)據(jù)透視表和交叉表
- python pandas模塊進(jìn)行數(shù)據(jù)分析
相關(guān)文章
python語(yǔ)音識(shí)別實(shí)踐之百度語(yǔ)音API
這篇文章主要為大家詳細(xì)介紹了python語(yǔ)音識(shí)別實(shí)踐之百度語(yǔ)音API,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08Laravel+Dingo/Api 自定義響應(yīng)的實(shí)現(xiàn)
這篇文章主要介紹了Laravel+Dingo/Api 自定義響應(yīng)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02Pycharm?debug程序,跳轉(zhuǎn)至指定循環(huán)條件/循環(huán)次數(shù)問(wèn)題
這篇文章主要介紹了Pycharm?debug程序,跳轉(zhuǎn)至指定循環(huán)條件/循環(huán)次數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08tensorflow mnist 數(shù)據(jù)加載實(shí)現(xiàn)并畫(huà)圖效果
TensorFlow™ 是一個(gè)采用數(shù)據(jù)流圖(data flow graphs),用于數(shù)值計(jì)算的開(kāi)源軟件庫(kù)。這篇文章給大家介紹tensorflow mnist 數(shù)據(jù)加載實(shí)現(xiàn)并畫(huà)圖效果,感興趣的朋友一起看看吧2020-02-02VSCode Python開(kāi)發(fā)環(huán)境配置的詳細(xì)步驟
這篇文章主要介紹了VSCode Python開(kāi)發(fā)環(huán)境配置的詳細(xì)步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-02-02在Windows8上的搭建Python和Django環(huán)境
作為一個(gè).NET程序員,真心不喜歡以及PHP這種松散的語(yǔ)法。有人說(shuō),程序員應(yīng)該多學(xué)幾門(mén)語(yǔ)言,本想學(xué)習(xí)Java,無(wú)奈感覺(jué)Java的語(yǔ)法太啰嗦了。很多人都推薦Python,說(shuō)它的語(yǔ)法簡(jiǎn)潔,執(zhí)行效率高。趁這兩天空閑,開(kāi)始學(xué)習(xí)Python。2014-07-07