簡體   English   中英

Python str 條也刪除想要的字符

[英]Python str strip also remove wanted characters

我在 dataframe 中有一個名為“Ring”的列,其中一些值只包含一個 integer,一些包含“RING 20”或“RING 30”等。我想去掉“RING”這個詞或任何變體,即大寫或沒有大寫並將 integer 值留在后面。

我嘗試了以下方法,但沒有成功


DF['Ring'] = DF['Ring'].str.strip('RING')
DF['Ring'] = DF['Ring'].str.replace('[RING]')


這些嘗試成功地刪除了不需要的字符串,但是,對於不包含文本字符串的行,它也會刪除 integer 值並留下 NaN。

我該如何解決這個問題?

謝謝你的幫助

您可以在 dataframe 列上使用.apply() 在你應用的function中你可以測試該值是否是一個字符串,然后你可以做足夠的處理,否則,按原樣返回。

df["RING"].apply( lambda x: x.strip('RING') if isinstance(x, str) else x )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM