1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        秒懂!圖解四個實用的Pandas函數(shù)!

        共 1411字,需瀏覽 3分鐘

         ·

        2020-10-29 17:30

        來源:towardsdatascience

        作者:Baijayanta Roy

        編譯&內(nèi)容補充:早起Python

        在用Python進行機器學習或者日常的數(shù)據(jù)處理中,Pandas是最常用的Python庫之一,熟練掌握pandas是每一個數(shù)據(jù)科學家的必備技能,本文將用代碼+圖片詳解Pandas中的四個實用函數(shù)!

        ? shift()

        假設(shè)我們有一組股票數(shù)據(jù),需要對所有的行進行移動,或者獲得前一天的股價,又或是計算最近三天的平均股價。

        面對這樣的需求我們可以選擇自己寫一個函數(shù)完成,但是使用pandas中的shift()可能是最好的選擇,它可以將數(shù)據(jù)按照指定方式進行移動!

        下面我們用代碼進行演示,首先導入相關(guān)庫并創(chuàng)建示例DataFrame

        import?pandas?as?pd
        import?numpy?as?np
        df?=?pd.DataFrame({'DATE':?[1,?2,?3,?4,?5],
        ???????????????????'VOLUME':?[100,?200,?300,400,500],
        ???????????????????'PRICE':?[214,?234,?253,272,291]})

        現(xiàn)在,當我們執(zhí)行df.shift(1,fill_value=0)即可將數(shù)據(jù)往下移動一行,并用0填充空值

        現(xiàn)在,如果我們需要將前一天的股價作為新的列,則可以使用下面的代碼

        我們可以如下輕松地計算最近三天的平均股價,并創(chuàng)建一個新的列

        向前移動數(shù)據(jù)也是很輕松的,使用-1即可

        更多有關(guān)shift函數(shù)可以查閱官方文檔,總之在涉及到數(shù)據(jù)移動時,你需要想到shift!

        ? value_counts()

        pandas中的value_counts()用于統(tǒng)計dataframe或series中不同數(shù)或字符串出現(xiàn)的次數(shù),并可以通過降序或升序?qū)Y(jié)果對象進行排序,下圖可以方便理解。

        現(xiàn)在讓我們用代碼示例,首先是Index對象

        下面是Series對象

        同時可以對bin參數(shù)將結(jié)果劃分為區(qū)間

        更多的細節(jié)與參數(shù)設(shè)置,可以閱讀pandas官方文檔。

        ? mask()

        pandas中的mask方法比較冷門,和np.where比較類似,將對cond條件進行判斷,如果cond為False,請保留原始值。如果為True,則用other中的相應(yīng)值替換。

        現(xiàn)在我們看下面的DataFrame,在這里我們要更改所有可以被二整除的元素的符號,就可以使用mask

        下面是代碼實現(xiàn)過程

        ? nlargest()?

        在很多情況下,我們會遇到需要查找Series或DataFrame的前3名或后5名值的情況,例如,總得分最高的3名學生,或選舉中獲得的總票數(shù)的3名最低候選人

        pandas中的nlargest()nsmallest()是滿足此類數(shù)據(jù)處理要求的最佳答案,下面就是從10個觀測值中取最大的三個圖解

        下面是代碼實現(xiàn)過程

        但如果有相等的情況出現(xiàn),那么可以使用first,last,all來進行保留

        了解了nlargest()的使用方法后,nsmallest()就顯得十分簡單,本文就不再贅述,如果還有疑問可以查閱官方文檔!

        -END-


        瀏覽 57
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            www.豆花视频 | 亚洲一二三四五六区 | 欧美AAAA视频 | 182午夜福利 | 亚洲日本熟妇毛茸茸 | 黄色AA级 | 91丝袜呻吟高潮美腿白嫩校花 | 女仆淫院 | 日日夜夜拍拍 | 欧美成人一级视频 |