Python Pandas教程

pandas教程 Pandas是經(jīng)過BSD許可的開源的 Python 數(shù)據(jù)分析支持庫(kù),為Python編程語(yǔ)言提供了高性能,易于使用的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具。Python with Pandas在包括學(xué)術(shù),商業(yè)領(lǐng)域在內(nèi)的廣泛領(lǐng)域中使用,包括金融,經(jīng)濟(jì)學(xué),統(tǒng)計(jì)學(xué),分析等。Pandas是一個(gè)強(qiáng)大的分析結(jié)構(gòu)化數(shù)據(jù)的工具集;它的使用基礎(chǔ)是Numpy(提供高性能的矩陣運(yùn)算);用于數(shù)據(jù)挖掘和數(shù)據(jù)分析,同時(shí)也提供數(shù)據(jù)清洗功能。在本教程中,我們將學(xué)習(xí)Python Pandas的各種功能以及如何在實(shí)踐中使用它們。

本教程是為那些想要學(xué)習(xí)pandas的基礎(chǔ)知識(shí)和各種功能的人準(zhǔn)備的。這對(duì)從事數(shù)據(jù)清理和分析工作的人員特別有用。完成本教程后,您將發(fā)現(xiàn)自己具有中等專業(yè)知識(shí)水平,可以從中獲得更高的專業(yè)知識(shí)水平。

學(xué)習(xí)pandas前您應(yīng)該對(duì)計(jì)算機(jī)編程術(shù)語(yǔ)有基本的了解。對(duì)任何一種編程語(yǔ)言都有基本的了解是加分的。pandas庫(kù)使用了NumPy的大多數(shù)功能。建議您先閱讀有關(guān)NumPy的教程,然后再繼續(xù)本教程。

Pandas 適用于處理以下類型的數(shù)據(jù):

與 SQL 或 Excel 表類似的,含異構(gòu)列的表格數(shù)據(jù); NumPy 數(shù)組元素需具有相同的數(shù)據(jù)類型,因此在內(nèi)存中的大小相同。 有序和無序(非固定頻率)的時(shí)間序列數(shù)據(jù); 帶行列標(biāo)簽的矩陣數(shù)據(jù),包括同構(gòu)或異構(gòu)型數(shù)據(jù); 任意其它形式的觀測(cè)、統(tǒng)計(jì)數(shù)據(jù)集, 數(shù)據(jù)轉(zhuǎn)入 Pandas 數(shù)據(jù)結(jié)構(gòu)時(shí)不必事先標(biāo)記。

為何使用 Pandas?

Pandas 的主要數(shù)據(jù)結(jié)構(gòu)是 Series(一維數(shù)據(jù))與 DataFrame(二維數(shù)據(jù)),這兩種數(shù)據(jù)結(jié)構(gòu)足以處理金融、統(tǒng)計(jì)、社會(huì)科學(xué)、工程等領(lǐng)域里的大多數(shù)典型用例。對(duì)于 R 用戶,DataFrame 提供了比 R 語(yǔ)言 data.frame 更豐富的功能。Pandas 基于 NumPy 開發(fā),可以與其它第三方科學(xué)計(jì)算支持庫(kù)完美集成。Pandas 就像一把萬能瑞士軍刀,下面僅列出了它的部分優(yōu)勢(shì) :

處理浮點(diǎn)與非浮點(diǎn)數(shù)據(jù)里的缺失數(shù)據(jù),表示為 NaN; 大小可變:插入或刪除 DataFrame 等多維對(duì)象的列; 自動(dòng)、顯式數(shù)據(jù)對(duì)齊:顯式地將對(duì)象與一組標(biāo)簽對(duì)齊,也可以忽略標(biāo)簽,在 Series、DataFrame 計(jì)算時(shí)自動(dòng)與數(shù)據(jù)對(duì)齊; 強(qiáng)大、靈活的分組(group by)功能:拆分-應(yīng)用-組合數(shù)據(jù)集,聚合、轉(zhuǎn)換數(shù)據(jù); 把 Python 和 NumPy 數(shù)據(jù)結(jié)構(gòu)里不規(guī)則、不同索引的數(shù)據(jù)輕松地轉(zhuǎn)換為 DataFrame 對(duì)象; 基于智能標(biāo)簽,對(duì)大型數(shù)據(jù)集進(jìn)行切片、花式索引、子集分解等操作; 直觀地合并(merge)、**連接(join)**數(shù)據(jù)集; 靈活地重塑(reshape)、**透視(pivot)**數(shù)據(jù)集; 軸支持結(jié)構(gòu)化標(biāo)簽:一個(gè)刻度支持多個(gè)標(biāo)簽; 成熟的 IO 工具:讀取文本文件(CSV 等支持分隔符的文件)、Excel 文件、數(shù)據(jù)庫(kù)等來源的數(shù)據(jù),利用超快的 HDF5 格式保存 / 加載數(shù)據(jù); 時(shí)間序列:支持日期范圍生成、頻率轉(zhuǎn)換、移動(dòng)窗口統(tǒng)計(jì)、移動(dòng)窗口線性回歸、日期位移等時(shí)間序列功能。

這些功能主要是為了解決其它編程語(yǔ)言、科研環(huán)境的痛點(diǎn)。處理數(shù)據(jù)一般分為幾個(gè)階段:數(shù)據(jù)整理與清洗、數(shù)據(jù)分析與建模、數(shù)據(jù)可視化與制表,Pandas 是處理數(shù)據(jù)的理想工具。

其它說明:

Pandas 速度很快。Pandas 的很多底層算法都用 Cython 優(yōu)化過。然而,為了保持通用性,必然要犧牲一些性能,如果專注某一功能,完全可以開發(fā)出比 Pandas 更快的專用工具。 Pandas 是 statsmodels 的依賴項(xiàng),因此,Pandas 也是 Python 中統(tǒng)計(jì)計(jì)算生態(tài)系統(tǒng)的重要組成部分。 Pandas 已廣泛應(yīng)用于金融領(lǐng)域。

Pandas的簡(jiǎn)單實(shí)例

  $ pip install pandas
  $ python -i
  >>> pandaspd
 >>> df = pd.() 
 >>> print(df)
  Empty DataFrame
 Columns: []
 Index: []
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清