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