更新時(shí)間:2022-09-13 來(lái)源:黑馬程序員 瀏覽量:
pandas是數(shù)據(jù)分析的優(yōu)選工具,它提供了大量使用戶能夠快速且便捷處理數(shù)據(jù)的函數(shù)和方法,包括算術(shù)運(yùn)算與數(shù)據(jù)對(duì)齊、I/O工具、數(shù)據(jù)預(yù)處理和可視化。接下來(lái)將對(duì) pandas的算術(shù)運(yùn)算與數(shù)據(jù)對(duì)齊功能進(jìn)行介紹,具體如下。
pandas具有自動(dòng)對(duì)齊的功能,它能夠?qū)蓚€(gè)數(shù)據(jù)結(jié)構(gòu)的索引對(duì)齊,這一點(diǎn)尤其體現(xiàn)在算術(shù)運(yùn)算上。參與運(yùn)算的兩個(gè)數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)形狀可以不同,具有的索引也可以不同。當(dāng)pandas 中的兩個(gè)數(shù)據(jù)結(jié)構(gòu)進(jìn)行運(yùn)算時(shí),它們會(huì)自動(dòng)尋找重疊的索引進(jìn)行計(jì)算,若索引不重疊則自動(dòng)賦值為NaN。若原來(lái)的數(shù)據(jù)都是整型,生成NaN以后會(huì)自動(dòng)轉(zhuǎn)換成浮點(diǎn)型。任何數(shù)與NaN計(jì)算的結(jié)果都為NaN。關(guān)于pandas中算術(shù)運(yùn)算的方法如表1所示。
表1算術(shù)運(yùn)算的方法
>>> df_obj = pd. DataFrame ( [ [1,2, 3], [4, 5,6] ] ) >>> df_obj 0 1 2 0 1 2 3 1 4 5 6 >>> other = pd.DataFrame( [7,8,9] ) >>> other 0 0 7 1 8 2 9 >>> df_obj + other 0 1 2 0 8.0 NaN NaN 1 12.0 NaN NaN 2 NaN NaN NaN >>> df_obj.add(other, fill_valuew0.0) 0 1 2 0 8.0 2.0 3.0 1 12.0 5.0 6.0 2 9.0 NaN NaN