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

          Python一樣的代碼,寫出來,有些識別的不對呢?

          共 2239字,需瀏覽 5分鐘

           ·

          2024-07-16 09:00

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

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

          紅豆生南國,春來發(fā)幾枝。

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

          一、前言

          前幾天在Python鉑金交流群【逆光】問了一個Python數(shù)據(jù)處理的問題,問題如下:一樣的代碼,提取數(shù)字,寫出來,有些識別的不對呢?

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

          這里【瑜亮老師】給了個思路如下:你這代碼一看就讓人頭疼

          【逆光】:我再看也頭疼

          【瑜亮老師】:你把數(shù)據(jù)發(fā)上來,我直接給你寫吧

          【不上班能干啥!】:我看這個原表格挺規(guī)整的,代碼怎么亂亂的

          【瑜亮老師】:太頭疼了,代碼慘不忍睹

          【逆光】:@不上班能干啥!?只是我的亂

          【不上班能干啥!】:像這種感覺都不用正則

          【逆光】:把費(fèi)用明細(xì)拆成后面對應(yīng)的幾列。@你說的對?大佬我發(fā)了,請幫我瞅瞅。

          這里【不上班能干啥!】給出的代碼如下:

          test = pd.read_excel("測試數(shù)據(jù).xlsx")

          extract_cols = test.columns.drop('費(fèi)用明細(xì)')
          for c in extract_cols:
              test[c] = test['費(fèi)用明細(xì)'].str.extract(fr'{c}.*?(\d+\.?\d*)').astype('float64')

          test.to_excel("測試數(shù)據(jù)-結(jié)果.xlsx", index=False)

          【不上班能干啥!】:測試數(shù)據(jù),我看了沒啥問題

          【逆光】:這么厲害,好快哦

          后來【不上班能干啥!】還給出了第二針方法,不用正則的方法,結(jié)果跟上面是一樣的,代碼如下:

          test = pd.read_excel("測試數(shù)據(jù).xlsx")
          extract_cols = test.columns.drop('費(fèi)用明細(xì)')

          test['費(fèi)用明細(xì)-c'] = test['費(fèi)用明細(xì)'].str.split(',')
          test = test.explode('費(fèi)用明細(xì)-c')

          test[['費(fèi)用明細(xì)-c''費(fèi)用明細(xì)-d']] = test['費(fèi)用明細(xì)-c'].str.split(' ', expand=True)
          test['費(fèi)用明細(xì)-d'] = test['費(fèi)用明細(xì)-d'].str.strip('元').astype('float64')
          test.loc[test['費(fèi)用明細(xì)-c'].str.contains('平臺加價(jià)'), '費(fèi)用明細(xì)-c'] = '平臺加價(jià)'

          test = test[test['費(fèi)用明細(xì)-d'].notna()]
          testc = test.groupby('費(fèi)用明細(xì)', sort=False)[['費(fèi)用明細(xì)-c''費(fèi)用明細(xì)-d']].apply(lambda x: x.set_index('費(fèi)用明細(xì)-c').T).reset_index(level=-1, drop=True)

          testc.reindex(columns=extract_cols).reset_index().to_excel("測試數(shù)據(jù)-結(jié)果.xlsx", index=False)

          【逆光】:學(xué)習(xí)了

          順利地解決了粉絲的問題。

          如果你也有類似這種Python相關(guān)的小問題,歡迎隨時來交流群學(xué)習(xí)交流哦,有問必答!

          三、總結(jié)

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

          最后感謝粉絲【逆光】提出的問題,感謝【瑜亮老師】、【不上班能干啥!】給出的思路,感謝【莫生氣】、【馮誠】等人參與學(xué)習(xí)交流。

          【提問補(bǔ)充】溫馨提示,大家在群里提問的時候??梢宰⒁庀旅鎺c(diǎn):如果涉及到大文件數(shù)據(jù),可以數(shù)據(jù)脫敏后,發(fā)點(diǎn)demo數(shù)據(jù)來(小文件的意思),然后貼點(diǎn)代碼(可以復(fù)制的那種),記得發(fā)報(bào)錯截圖(截全)。代碼不多的話,直接發(fā)代碼文字即可,代碼超過50行這樣的話,發(fā)個.py文件就行。


          瀏覽 29
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

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

          手機(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>
                  久久国产V一级毛多内射 | 无码精品人妻一区二区欧美 | 18禁www网站 | 人妻摸一摸日日爽一爽,免费视频 | 台湾无码精品 |