<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          請(qǐng)問(wèn)Pandas怎么能把類似201001這種月度格式改為2021-01-31這種日期格式

          共 1740字,需瀏覽 4分鐘

           ·

          2022-07-05 17:11

          點(diǎn)擊上方“Python爬蟲(chóng)與數(shù)據(jù)挖掘”,進(jìn)行關(guān)注

          回復(fù)“書籍”即可獲贈(zèng)Python從入門到進(jìn)階共10本電子書

          落葉人何在,寒云路幾層。

          大家好,我是Python進(jìn)階者。

          一、前言

          前幾天在Python最強(qiáng)王者交流群【老松鼠】問(wèn)了一道Pandas時(shí)間處理的問(wèn)題,如下圖所示。

          二、實(shí)現(xiàn)過(guò)程

          一開(kāi)始以為只是每個(gè)數(shù)據(jù)先加個(gè)31后綴,之后日期格式化轉(zhuǎn)換一下應(yīng)該就可以了,后來(lái)發(fā)現(xiàn)每個(gè)月天數(shù)不一樣,不可以一概而論,后來(lái)才知道,原來(lái)有現(xiàn)成的函數(shù)。

          這里【瑜亮老師】給了兩個(gè)方法,一起來(lái)學(xué)習(xí)下吧!

          方法一

          代碼如下:

          import pandas as pd
          from pandas.tseries.offsets import MonthEnd

          df = pd.DataFrame({'date': ['2022-01''2022-02''2022-03''2022-04''2022-05''2022-06''2022-07']})
          df['new_date'] = df['date'].astype('datetime64').map(MonthEnd())
          print(df)

          運(yùn)行結(jié)果如下圖所示:

          方法二

          至于像202201這樣格式的時(shí)間字符串,【瑜亮老師】做了一下轉(zhuǎn)換,然后繼續(xù)使用類似上面的方法,實(shí)現(xiàn)需求。

          import pandas as pd
          from pandas.tseries.offsets import MonthEnd

          df = pd.DataFrame({'date': ['202201''202202''202203''202204''202205''202206''202207']})

          df['new_date'] = pd.to_datetime(df['date'], format='%Y%m').map(MonthEnd())
          print(df)

          運(yùn)行之后,結(jié)果如下圖所示:

          不過(guò)后來(lái)【月神】在測(cè)試的時(shí)候發(fā)現(xiàn),當(dāng)日期是本月的最后一天,轉(zhuǎn)變后會(huì)變成下月的最后一天,有點(diǎn)偏移誤差。

          后來(lái)【瑜亮老師】還給了一個(gè)思路,無(wú)需額外導(dǎo)包,不添加任何依賴,如下所示。

          后來(lái)【老松鼠】自己給了一份代碼,他自己覺(jué)得方法有點(diǎn)兒笨,但是結(jié)果和效率也還算可以,如下圖所示。

          后來(lái)【月神】針對(duì)批量數(shù)據(jù),又多方面進(jìn)行了嘗試,如下所示:

          后來(lái)發(fā)現(xiàn)用加號(hào)就快了很多。針對(duì)效率方面,【月神】也給出了自己的看法,真的學(xué)習(xí)了!

          這個(gè)加號(hào),【月神】也舉了一個(gè)例子,來(lái)幫助大家理解。

          三、總結(jié)

          大家好,我是Python進(jìn)階者。這篇文章主要盤點(diǎn)了一道Pandas時(shí)間處理的問(wèn)題,文中針對(duì)該問(wèn)題給出了具體的解析和代碼實(shí)現(xiàn),幫助粉絲順利解決了問(wèn)題。

          最后感謝粉絲【老松鼠】提問(wèn),感謝【瑜亮老師】、【月神】、【dcpeng】、【老松鼠】給出的思路和代碼解析,感謝【馮誠(chéng)】、【艾?!びX(jué)羅】、【Chloe】、【mofyl】等人參與學(xué)習(xí)交流。

          小伙伴們,快快用實(shí)踐一下吧!如果在學(xué)習(xí)過(guò)程中,有遇到任何問(wèn)題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。

          ------------------- End -------------------

          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Python學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群

          萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行

          /今日留言主題/

          隨便說(shuō)一兩句吧~~

          瀏覽 38
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲中文字幕不卡 | 美女扒开尿口让 | 樱桃一区二区三区 | 2014AV天堂网 | 竹菊一区二区 |