站長資訊網
        最全最豐富的資訊網站

        pandas技巧之 DataFrame中的排序與匯總方法

        pandas技巧之  DataFrame中的排序與匯總方法

        相關學習推薦:python教程

        今天是pandas數據處理專題的第六篇文章,我們來聊聊DataFrame的排序與匯總運算。

        在上一篇文章當中我們主要介紹了DataFrame當中的apply方法,如何在一個DataFrame對每一行或者是每一列進行廣播運算,使得我們可以在很短的時間內處理整份數據。今天我們來聊聊如何對一個DataFrame根據我們的需要進行排序以及一些匯總運算的使用方法。

        排序

        排序是我們一個非?;镜男枨?,在pandas當中將這個需求進一步細分,細分成了根據索引排序以及根據值排序。我們先來看看Series當中的排序方法。

        Series當中的排序方法有兩個,一個是sort_index,顧名思義根據Series中的索引對這些值進行排序。另一個是sort_values,根據Series中的值來排序。這兩個方法都會返回一個新的Series:

        pandas技巧之  DataFrame中的排序與匯總方法

        索引排序

        對于DataFrame來說也是一樣,同樣有根據值排序以及根據索引排序這兩個功能。但是由于DataFrame是一個二維的數據,所以在使用上會有些不同。最簡單的差別是在于Series只有一列,我們明確的知道排序的對象,但是DataFrame不是,它當中的索引就分為兩種,分別是行索引以及列索引。所以我們在排序的時候需要指定我們想要排序的軸,也就是axis。

        默認的情況我們是根據行索引進行排序,如果我們要指定根據列索引進行排序,需要傳入參數axis=1。

        pandas技巧之  DataFrame中的排序與匯總方法

        我們還可以傳入ascending這個參數,用來指定我們想要的排序順序是正序還是倒序。

        pandas技巧之  DataFrame中的排序與匯總方法

        值排序

        DataFrame的值排序有所不同,我們不能對行進行排序,只能針對列。我們通過by參數傳入我們希望排序參照的列,可以是一列也可以是多列。

        pandas技巧之  DataFrame中的排序與匯總方法

        排名

        有的時候我們希望得到元素的排名,我們會希望知道當前元素在整體當中排第幾,pandas當中也提供了這個功能,它就是rank方法。

        pandas技巧之  DataFrame中的排序與匯總方法

        我們可以發現我們隨手輸入的一串數字當中,包含兩個7,7是Series當中最大的數字,但是它們的排名為什么是6.5呢?

        其實很簡單,因為7出現了兩次,分別是第6位和第7位,這里對它所有出現的排名取了平均,所以是6.5。如果我們不希望它取平均,而是根據出現的先后順序給出排名的話,我們可以用method參數指定我們希望的效果。

        pandas技巧之  DataFrame中的排序與匯總方法

        method的合法參數并不止first這一種,還有一些其他稍微冷門一些的用法,我們一并列出。

        pandas技巧之  DataFrame中的排序與匯總方法

        如果是DataFrame的話,默認是以行為單位,計算每一行中元素占整體的排名。我們也可以通過axis參數指定以列為單位計算:

        pandas技巧之  DataFrame中的排序與匯總方法

        匯總運算

        最后我們來介紹一下DataFrame當中的匯總運算,匯總運算也就是聚合運算,比如我們最常見的sum方法,對一批數據進行聚合求和。DataFrame當中同樣有類似的方法,我們一個一個來看。

        首先是sum,我們可以使用sum來對DataFrame進行求和,如果不傳任何參數,默認是對每一行進行求和。

        pandas技巧之  DataFrame中的排序與匯總方法

        除了sum之外,另一個常用的就是mean,可以針對一行或者是一列求平均。

        pandas技巧之  DataFrame中的排序與匯總方法

        由于DataFrame當中常常會有為NA的元素,所以我們可以通過skipna這個參數排除掉缺失值之后再計算平均值。

        另一個我個人覺得很好用的方法是descirbe,可以返回DataFrame當中的整體信息。比如每一列的均值、樣本數量、標準差、最小值、最大值等等。是一個常用的統計方法,可以用來了解DataFrame當中數據的分布情況。

        pandas技巧之  DataFrame中的排序與匯總方法

        除了介紹的這些方法之外,DataFrame當中還有很多類似的匯總運算方法,比如idxmax,idxmin,var,std等等,大家感興趣可以去查閱相關文檔,但是根據我的經驗一般用不到。

        想了解

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲AⅤ永久无码精品AA| 久久精品免费网站网| 久久久久人妻一区精品| 国产精品视频白浆免费视频| 久久精品无码一区二区日韩AV| 国产精品视频网站你懂得| 亚洲精品无码精品mV在线观看| 狠狠精品干练久久久无码中文字幕| 国产精品麻豆高清在线观看| 欧美精品videosse精子| 亚洲av午夜国产精品无码中文字| 91精品免费久久久久久久久| 大伊香蕉精品视频在线导航| 少妇精品久久久一区二区三区| 乱人伦人妻精品一区二区| 精品国产福利久久久| 国产精品多人p群无码| 亚洲AV无码成人网站久久精品大| 欧美激情精品久久久久久久九九九 | 久久国产美女免费观看精品| 2021国产三级精品三级在专区| 成人国内精品久久久久影院| 1000部精品久久久久久久久| 国精品午夜福利视频不卡麻豆 | 久久久久成人精品无码 | 久久久精品人妻一区二区三区蜜桃 | 国产精品免费久久| 国产99视频精品免费视频76 | 国产精品丝袜黑色高跟鞋| 精品人妻无码一区二区色欲产成人| 午夜天堂精品久久久久| 野狼第一精品社区| 亚洲精品乱码久久久久久久久久久久 | 国产99re在线观看只有精品| 97久久综合精品久久久综合| 国产成人精品久久二区二区| 国产精品久久一区二区三区| 亚洲国产精品第一区二区| 99精品国产成人一区二区| 国产微拍精品一区二区| 欧美精品亚洲人成在线观看|