<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>

          盤點(diǎn)6個(gè)Pandas中批量替換字符的方法

          共 1860字,需瀏覽 4分鐘

           ·

          2022-03-09 15:15

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

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

          朱雀橋邊野草花,烏衣巷口夕陽(yáng)斜。

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

          一、前言

          前幾天在Python最強(qiáng)王者群有個(gè)叫【dcpeng】的粉絲問(wèn)了一個(gè)關(guān)于Pandas中的問(wèn)題,這里拿出來(lái)給大家分享下,一起學(xué)習(xí)。

          想問(wèn)一下我有一列編碼為1,2,3,4的數(shù)據(jù),如何將1批量換為“開心”,2批量換為“悲傷”這種字符替換呢?

          二、解決過(guò)程

          思路挺簡(jiǎn)單,限定Pandas處理,想到的方法有很多,這里拿出來(lái)給大家分享,希望對(duì)大家的學(xué)習(xí)有幫助。

          1aa5b0330286602c2599d1711636fc46.webp下面這個(gè)是生成源數(shù)據(jù)的代碼:

          df?=?pd.DataFrame({'col1':?[1,?2,?2,?3,?3,?3,?4,?4,?4,?4]})
          df
          方法一:【月神】解答

          代碼如下所示:

          df['col2']?=?df['col1'].map({1:"開心",?2:"悲傷",?3:"難過(guò)",?4:"淚目"})
          df

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

          58f355172e7c3ffbd0ebd089f6cfe348.webp
          方法二:【dcpeng】解答

          這個(gè)方法是參考才哥的文章寫出來(lái)的,代碼如下所示:

          def?getValue(s):
          ????if?s==1:
          ????????return?'開心'
          ????elif?s==2:
          ????????return?'悲傷'
          ????elif?s==3:
          ????????return?'難過(guò)'
          ????elif?s==4:
          ????????return?'淚目'
          df['col3']?=?df['col1'].apply(getValue)
          df

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

          293add21d4dc1f1fbdcdf51ed33b1bd3.webp
          方法三:【冫馬讠成】解答

          【冫馬讠成】大佬給了一個(gè)思路,使用replace實(shí)現(xiàn)。

          495b0b89c69cac0a3859c9f969cec56b.webp代碼如下所示:

          df['col4']?=?df['col1'].replace(1,?'開心').replace(2,?'悲傷').replace(3,?'難過(guò)').replace(4,?'淚目')
          df

          得到的結(jié)果如下所示:

          9d78c11f32aacb12ce21564d60727e21.webp
          方法四:【dcpeng】解答

          這個(gè)方法是基于apply()函數(shù),代碼如下所示:

          def?get_value(s):
          ????dict?=?{1:"開心",?2:"悲傷",?3:"難過(guò)",?4:"淚目"}
          ????return?dict[s]
          df['col5']?=?df['col1'].apply(get_value)
          df

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

          47df1e6dfa17e7ebf4260572928e50f0.webp
          方法五:【沈復(fù)】解答

          【沈復(fù)】大佬給了一個(gè)思路和代碼,如下圖所示:

          cf85e448bb31f2de72a52d9c6153da03.webp

          這個(gè)方法是基于map()函數(shù),代碼如下所示:

          def?get_value(s):
          ????dict?=?{1:"開心",?2:"悲傷",?3:"難過(guò)",?4:"淚目"}
          ????return?dict[s]
          df['col5']?=?df['col1'].map(get_value)
          df

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

          c2bd816c6cfc0cce70a65f32d38cc48e.webp
          方法六:【月神】解答

          這里【月神】仍然是使用replace方法進(jìn)行實(shí)現(xiàn)的,但是代碼秀了很多。

          90f9b5728292c5413f34380069de4566.webp代碼如下所示:

          df['col7']?=?df['col1'].replace([1,?2,?3,?4],?['開心',?'悲傷',?'難過(guò)',?'淚目'])
          df

          【月神】提醒:這個(gè)是全匹配,不要加regex=True參數(shù),不然你會(huì)后悔的!

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

          8ec5af11523fd8da756133fe76157293.webp

          三、總結(jié)

          大家好,我是Python進(jìn)階者。這篇文章基于粉絲提問(wèn),針對(duì)有一列編碼為1,2,3,4的數(shù)據(jù),如何將1批量換為“開心”,2批量換為“悲傷”這種字符替換的問(wèn)題,盤點(diǎn)了6個(gè)Pandas中批量替換字符的方法,給出了具體說(shuō)明和演示,順利地幫助粉絲解決了問(wèn)題!

          最后感謝粉絲【dcpeng】提問(wèn),感謝【??(這是月亮的背面)】和【dcpeng】、【才哥】、【沈復(fù)】、大佬給出的示例和代碼支持。感謝粉絲【冫馬讠成】、【老松鼠】等人參與學(xué)習(xí)交流。

          191429ddd5dbe634dede1c088cd9f73a.webp

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

          -------------------?End?-------------------

          往期精彩文章推薦:

          2ab9b3e6b9ca95088aff4a7e6f2b7c07.webp

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

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

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

          /今日留言主題/

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

          瀏覽 100
          點(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>
                  www日日日 | 欧美黄在线 | 天堂网在线亚洲 | 蜜桃传媒一区二区亚洲AV动漫 | 亚洲黄色视频网址 |