第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何通過從特定字符替換以及 on/forward 來使用 str.replace

如何通過從特定字符替換以及 on/forward 來使用 str.replace

阿波羅的戰(zhàn)車 2023-08-15 18:54:55
這是我想要清理的表格的摘錄。我嘗試做的事情:df_sb['SB'] = df_sb['SB'].str.replace('-R*', '', df_sb['SB'].shape[0])我期望這個(沒有-Rxx):但我已經(jīng)得到了這個(只有破折號[-]和字符“R”被替換):你能幫我得到第 4 項想要的結(jié)果嗎?
查看完整描述

2 回答

?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗 獲得超7個贊

str.replace在這里工作,你只需要使用正則表達(dá)式。所以你原來的答案非常接近!


df = pd.DataFrame({"EO": ["A33X-22EO-06690"] * 2, "SB": ["A330-22-3123-R01", "A330-22-3123-R02"]})


print(df)

                EO                SB

0  A33X-22EO-06690  A330-22-3123-R01

1  A33X-22EO-06690  A330-22-3123-R02

df["new_SB"] = df["SB"].str.replace(r"-R\d+$", "")


print(df)

                EO                SB        new_SB

0  A33X-22EO-06690  A330-22-3123-R01  A330-22-3123

1  A33X-22EO-06690  A330-22-3123-R02  A330-22-3123

正則表達(dá)式的含義:

r"-R\d+$"表示在字符串中的任何位置找到我們看到的字符“-R”后跟 1 個或多個數(shù)字 (\d+)。然后我們將其限制為僅當(dāng)該模式出現(xiàn)在字符串的最末尾時才起作用。這樣我們就不會意外地替換 SB 字符串中間出現(xiàn)的 -R(數(shù)字)(例如,我們不會刪除“A330-22-R101-”中間的“-R101”) R20”。我們只會刪除“-R20”)。如果您確實想刪除“-R101”和“-R20”,請從正則表達(dá)式中刪除“$”。


查看完整回答
反對 回復(fù) 2023-08-15
?
隔江千里

TA貢獻(xiàn)1906條經(jīng)驗 獲得超10個贊

使用的示例str.partition():


s = ['A330-22-3123-R-01','A330-22-3123-R-02']


for e in s:

    print(e.partition('-R')[0])

輸出:


A330-22-3123                                                                                                                                                                 

A330-22-3123 

編輯:


未經(jīng)測試,但就您的情況而言:


df_sb['SB'] = df_sb['SB'].str.partition('-R')[0]


查看完整回答
反對 回復(fù) 2023-08-15
  • 2 回答
  • 0 關(guān)注
  • 184 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號