久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

        手機站
        千鋒教育

        千鋒學習站 | 隨時隨地免費學

        千鋒教育

        掃一掃進入千鋒手機站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學習站小程序
        隨時隨地免費學習課程

        當前位置:首頁  >  技術(shù)干貨  > 小紅書達人帶你學習DataFrame的排序

        小紅書達人帶你學習DataFrame的排序

        來源:千鋒教育
        發(fā)布人:syq
        時間: 2022-08-12 13:48:00 1660283280

          現(xiàn)在直播帶貨太火了,宋宋最近也在小紅書上敗家了好幾單,身為程序員的宋宋有點不甘心。拿到了一份小紅書直播帶貨榜數(shù)據(jù)分析下,看一看小紅書的賣貨實力和用戶分析?本案例主要針對DataFrame的排序知識點的講解。

        DataFrame的排序

          ### 數(shù)據(jù)排序

          在數(shù)據(jù)分析的使用過程中,數(shù)據(jù)排序是必不可少的。當然DataFrame就給我提供了一個非常方便的對數(shù)據(jù)排序的方法,那就是:

          sort_index和sort_values方法。在我們講解DataFrame的排序之前,回顧下Series的排序。

          Series排序有兩種:一個是sort_index,顧名思義根據(jù)Series中的索引對這些值進行排序。另一個是sort_values,根據(jù)Series中的值來排序。這兩個方法都會返回一個新的Series。使用Series的排序可以對DataFrame中的某一列進行排序。比如:按照年齡排序

          ```

          df['age'].sort_values() # 獲取age列,并進行排序

          ```

          #### 索引排序

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

          ```

          df.sort_index(axis=0,ascending=False)

          # 其中ascending是用來指定排序的升降序的,默認是升序,如果是降序排列可以使用ascending=False

          ```  

        屏幕快照 2021-07-22 下午5.55.43

          #### 值排序

          DataFrame的值排序有所不同,我們不能對行進行排序,**只能針對列**。我們通過by參數(shù)傳入我們希望排序參照的列,可以是一列也可以是多列。比如:需要按照用戶下單的金額排序,升序排列

          ```

          df.sort_values(by='revenue') # 通過by參數(shù)指定排序的列名

          ```

          結(jié)果:  

        屏幕快照 2021-07-22 下午6.00.40

          或者是按照用戶下單金額和消費的總金額排序,

          ```

          # 如果排序的列名是多個,則可以使用列表將多個列名放于列表中

          df.sort_values(by=['revenue','accumulation'])

          ```

          結(jié)果:  

        屏幕快照 2021-07-22 下午6.04.23

          以上排序是默認的升序,如果需要獲取用戶下單金額最高的則需要,則需要降序排列查看。

          ```

          df.sort_values(by=['revenue','accumulation'],asccending=False)

          ``` 

        屏幕快照 2021-07-22 下午6.06.33

          當然還可以在sort_values方法中指定,inplace=True 保留排序結(jié)果在原數(shù)據(jù)中,默認是False。也可以指定按照哪個軸排序使用axis,

          也可以指定排序的方式是:快速排序、合并排序、堆排序使用kind參數(shù),默認是快速排序。(以下分別是合并排序和快排)  

        屏幕快照 2021-07-22 下午6.24.57

          ### 數(shù)據(jù)匯總

          DataFrame中的匯總運算也就是**聚合運算**,比如我們最常見的sum方法,對一批數(shù)據(jù)進行聚合求和。還有mean方法,對數(shù)據(jù)進行均值運算等等。

          > max([axis=1|0])

          >

          > min([axis=1|0])

          >

          > sum([axis=1|0])

          >

          > mean([axis=1|0])

          >

          > count([axis=1|0])

          >

          > ....

          我們可以使用sum來對DataFrame的行或者列進行求和,如果不傳任何參數(shù),默認是對每一行進行求和,如果需要按照列求和則設(shè)置axis=1。比如求過往第三方購買的數(shù)量的總和

          ```python

          df['3rd'].sum()

          ```

          結(jié)果:

          > ```

          > 67329

          > ```

          當然我們也可以獲取用戶的購買金額revenue的均值

          ```

          df['revenue'].mean() # 默認axis=0

          ```

          結(jié)果:

          > ```

          > 398.2981660045499

          > ```

          獲取用戶注冊6個月內(nèi)的個數(shù)

          ```

          df.loc[df['lifecycle']=='A','lifecycle'].count()

          ```

          結(jié)果:

          > ```

          > 3541

          > ```

          獲取消費總額最大的金額

          ```

          df['accumulation'].max()

          ```

          結(jié)果:

          > ```

          > 11597.9

          > ```

          由于DataFrame當中常常會有為NA的元素,所以我們可以通過skipna這個參數(shù)排除掉缺失值之后再計算平均值。另外還有一個很好用的方法是descirbe,可以返回DataFrame當中的**整體信息**。比如每一列的均值、樣本數(shù)量、標準差、最小值、最大值等等。是一個常用的統(tǒng)計方法,可以用來了解DataFrame當中數(shù)據(jù)的分布情況。

          ```

          df.describe()

          ```

          結(jié)果:  

        屏幕快照 2021-07-22 下午11.44.32

          其中std是求標準差,50%求中位數(shù),var()求方差等...

          當然我們也可以同時獲取用戶的購買金額revenue的均值和消費總額最大的金額,此時我們需要使用agg方法完成。

          ```

          df.agg({'revenue':np.mean,'accumulation':np.max}) # 參數(shù)是一個字典,key為列名,value為要進行的聚合運算

          ```

          結(jié)果:  

        屏幕快照 2021-07-22 下午11.42.08

          當然更多情況下,agg方法往往是結(jié)合分組groupby使用。也不是絕對的,根據(jù)實際的情況吧!

          更多關(guān)于Python 培訓的問題,歡迎咨詢千鋒教育在線名師。千鋒教育擁有多年IT培訓服務經(jīng)驗,采用全程面授高品質(zhì)、高體驗培養(yǎng)模式,擁有國內(nèi)一體化教學管理及學員服務,助力更多學員實現(xiàn)高薪夢想。

          注:本文部分文字和圖片來源于網(wǎng)絡,如有侵權(quán),請聯(lián)系刪除。版權(quán)歸原作者所有!

        tags:
        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
        請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
        免費領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學 138****2860 剛剛成功領(lǐng)取
        王同學 131****2015 剛剛成功領(lǐng)取
        張同學 133****4652 剛剛成功領(lǐng)取
        李同學 135****8607 剛剛成功領(lǐng)取
        楊同學 132****5667 剛剛成功領(lǐng)取
        岳同學 134****6652 剛剛成功領(lǐng)取
        梁同學 157****2950 剛剛成功領(lǐng)取
        劉同學 189****1015 剛剛成功領(lǐng)取
        張同學 155****4678 剛剛成功領(lǐng)取
        鄒同學 139****2907 剛剛成功領(lǐng)取
        董同學 138****2867 剛剛成功領(lǐng)取
        周同學 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        反欺詐中所用到的機器學習模型有哪些?

        一、邏輯回歸模型邏輯回歸是一種常用的分類模型,特別適合處理二分類問題。在反欺詐中,邏輯回歸可以用來預測一筆交易是否是欺詐。二、決策樹模...詳情>>

        2023-10-14 14:09:29
        軟件開發(fā)管理流程中會出現(xiàn)哪些問題?

        一、需求不清需求不明確是導致項目失敗的主要原因之一。如果需求沒有清晰定義,開發(fā)人員可能會開發(fā)出不符合用戶期望的產(chǎn)品。二、通信不足溝通問...詳情>>

        2023-10-14 13:43:21
        軟件定制開發(fā)中的敏捷開發(fā)是什么?

        軟件定制開發(fā)中的敏捷開發(fā)是什么軟件定制開發(fā)中的敏捷開發(fā),從宏觀上看,是一個高度關(guān)注人員交互,持續(xù)開發(fā)與交付,接受需求變更并適應環(huán)境變化...詳情>>

        2023-10-14 13:24:57
        什么是PlatformIo?

        PlatformIO是什么PlatformIO是一個全面的物聯(lián)網(wǎng)開發(fā)平臺,它為眾多硬件平臺和開發(fā)環(huán)境提供了統(tǒng)一的工作流程,有效簡化了開發(fā)過程,并能兼容各種...詳情>>

        2023-10-14 12:55:06
        云快照與自動備份有什么區(qū)別?

        1、定義和目標不同云快照的主要目標是提供一種快速恢復數(shù)據(jù)的方法,它只記錄在快照時間點后的數(shù)據(jù)變化,而不是所有的數(shù)據(jù)。自動備份的主要目標...詳情>>

        2023-10-14 12:48:59
        平南县| 通化县| 河津市| 阳朔县| 江山市| 同心县| 花莲市| 依兰县| 黑山县| 阿鲁科尔沁旗| 洪湖市| 阿巴嘎旗| 泗阳县| 汽车| 黄浦区| 芜湖市| 磐石市| 正定县| 凤阳县| 中方县| 阳西县| 甘肃省| 磴口县| 上杭县| 招远市| 乌拉特前旗| 招远市| 永定县| 天镇县| 庆阳市| 双牌县| 饶阳县| 蓬安县| 五峰| 古田县| 炎陵县| 金湖县| 长丰县| 武邑县| 策勒县| 南华县|