日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
創(chuàng)新互聯(lián)Python教程:Python之了解pandas!

【01x00】了解 Pandas

Pandas 是 python 的一個(gè)數(shù)據(jù)分析包,是基于 NumPy 構(gòu)建的,最初由 AQR Capital Management 于 2008 年 4 月開(kāi)發(fā),并于 2009 年底開(kāi)源出來(lái),目前由專(zhuān)注于 Python 數(shù)據(jù)包開(kāi)發(fā)的 PyData 開(kāi)發(fā)團(tuán)隊(duì)繼續(xù)開(kāi)發(fā)和維護(hù),屬于 PyData 項(xiàng)目的一部分。

Pandas 最初被作為金融數(shù)據(jù)分析工具而開(kāi)發(fā)出來(lái),因此,Pandas 為時(shí)間序列分析提供了很好的支持。Pandas 的名稱來(lái)自于面板數(shù)據(jù)(panel data)和 Python 數(shù)據(jù)分析(data analysis)。

panel data 是經(jīng)濟(jì)學(xué)中關(guān)于多維數(shù)據(jù)集的一個(gè)術(shù)語(yǔ),在 Pandas 中也提供了 panel 的數(shù)據(jù)類(lèi)型。

Pandas 經(jīng)常和其它工具一同使用,如數(shù)值計(jì)算工具 NumPy 和 SciPy,分析庫(kù) statsmodels 和 scikit-learn,數(shù)據(jù)可視化庫(kù) Matplotlib 等,雖然 Pandas 采用了大量的 NumPy 編碼風(fēng)格,但二者不同是 Pandas 是專(zhuān)門(mén)為處理表格和混雜數(shù)據(jù)設(shè)計(jì)的。

而 NumPy 更適合處理統(tǒng)一的數(shù)值數(shù)組數(shù)據(jù)。

Pandas 是 Python 的核心數(shù)據(jù)分析支持庫(kù),提供了快速、靈活、明確的數(shù)據(jù)結(jié)構(gòu),旨在簡(jiǎn)單、直觀地處理關(guān)系型、標(biāo)記型數(shù)據(jù)。

Pandas 的目標(biāo)是成為 Python 數(shù)據(jù)分析實(shí)踐與實(shí)戰(zhàn)的必備高級(jí)工具,其長(zhǎng)遠(yuǎn)目標(biāo)是成為最強(qiáng)大、最靈活、可以支持任何語(yǔ)言的開(kāi)源數(shù)據(jù)分析工具。經(jīng)過(guò)多年不懈的努力,Pandas 離這個(gè)目標(biāo)已經(jīng)越來(lái)越近了。

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

1、與 SQL 或 Excel 表類(lèi)似的,含異構(gòu)列的表格數(shù)據(jù);

2、有序和無(wú)序(非固定頻率)的時(shí)間序列數(shù)據(jù);

3、帶行列標(biāo)簽的矩陣數(shù)據(jù),包括同構(gòu)或異構(gòu)型數(shù)據(jù);

4、任意其它形式的觀測(cè)、統(tǒng)計(jì)數(shù)據(jù)集, 數(shù)據(jù)轉(zhuǎn)入 Pandas 數(shù)據(jù)結(jié)構(gòu)時(shí)不必事先標(biāo)記。

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 語(yǔ)言用戶,DataFrame 提供了比 R 語(yǔ)言 data.frame 更豐富的功能。Pandas 基于 NumPy 開(kāi)發(fā),可以與其它第三方科學(xué)計(jì)算支持庫(kù)完美集成。

Pandas 就像一把萬(wàn)能瑞士軍刀,下面僅列出了它的部分優(yōu)勢(shì) :

1、處理浮點(diǎn)與非浮點(diǎn)數(shù)據(jù)里的缺失數(shù)據(jù),表示為 NaN;

2、大小可變:插入或刪除 DataFrame 等多維對(duì)象的列;

3、自動(dòng)、顯式數(shù)據(jù)對(duì)齊:顯式地將對(duì)象與一組標(biāo)簽對(duì)齊,也可以忽略標(biāo)簽,在 Series、DataFrame 計(jì)算時(shí)自動(dòng)與數(shù)據(jù)對(duì)齊;

4、強(qiáng)大、靈活的分組(group by)功能:拆分-應(yīng)用-組合數(shù)據(jù)集,聚合、轉(zhuǎn)換數(shù)據(jù);

5、把 Python 和 NumPy 數(shù)據(jù)結(jié)構(gòu)里不規(guī)則、不同索引的數(shù)據(jù)輕松地轉(zhuǎn)換為 DataFrame 對(duì)象;

6、基于智能標(biāo)簽,對(duì)大型數(shù)據(jù)集進(jìn)行切片、花式索引、子集分解等操作;

7、直觀地合并和連接數(shù)據(jù)集;

8、靈活地重塑和旋轉(zhuǎn)數(shù)據(jù)集;

9、軸支持分層標(biāo)簽(每個(gè)刻度可能有多個(gè)標(biāo)簽);

10、強(qiáng)大的 IO 工具,讀取平面文件(CSV 等支持分隔符的文件)、Excel 文件、數(shù)據(jù)庫(kù)等來(lái)源的數(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ù)的理想工具。

其它說(shuō)明:

Pandas 速度很快。Pandas 的很多底層算法都用 Cython 優(yōu)化過(guò)。然而,為了保持通用性,必然要犧牲一些性能,如果專(zhuān)注某一功能,完全可以開(kāi)發(fā)出比 Pandas 更快的專(zhuān)用工具。

Pandas 是 statsmodels 的依賴項(xiàng),因此,Pandas 也是 Python 中統(tǒng)計(jì)計(jì)算生態(tài)系統(tǒng)的重要組成部分。

Pandas 已廣泛應(yīng)用于金融領(lǐng)域。

【02x00】Pandas 數(shù)據(jù)結(jié)構(gòu)

Pandas 的主要數(shù)據(jù)結(jié)構(gòu)是 Series(帶標(biāo)簽的一維同構(gòu)數(shù)組)與 DataFrame(帶標(biāo)簽的,大小可變的二維異構(gòu)表格)。

Pandas 數(shù)據(jù)結(jié)構(gòu)就像是低維數(shù)據(jù)的容器。比如,DataFrame 是 Series 的容器,Series 則是標(biāo)量的容器。使用這種方式,可以在容器中以字典的形式插入或刪除對(duì)象。

此外,通用 API 函數(shù)的默認(rèn)操作要顧及時(shí)間序列與截面數(shù)據(jù)集的方向。

當(dāng)使用 Ndarray 存儲(chǔ)二維或三維數(shù)據(jù)時(shí),編寫(xiě)函數(shù)要注意數(shù)據(jù)集的方向,這對(duì)用戶來(lái)說(shuō)是一種負(fù)擔(dān);如果不考慮 C 或 Fortran 中連續(xù)性對(duì)性能的影響,一般情況下,不同的軸在程序里其實(shí)沒(méi)有什么區(qū)別。

Pandas 里,軸的概念主要是為了給數(shù)據(jù)賦予更直觀的語(yǔ)義,即用更恰當(dāng)?shù)姆绞奖硎緮?shù)據(jù)集的方向。這樣做可以讓用戶編寫(xiě)數(shù)據(jù)轉(zhuǎn)換函數(shù)時(shí),少費(fèi)點(diǎn)腦子。

處理 DataFrame 等表格數(shù)據(jù)時(shí),對(duì)比 Numpy,index(行)或 columns(列)比 axis 0 和 axis 1 更直觀。用這種方式迭代 DataFrame 的列,代碼更易讀易懂:

for col in df.columns:
    series = df[col]
    # do something with series

更多Python知識(shí),請(qǐng)關(guān)注Python視頻教程?。?/p>
網(wǎng)站名稱:創(chuàng)新互聯(lián)Python教程:Python之了解pandas!
本文鏈接:http://www.5511xx.com/article/dhhcgjp.html