python dataframe列應(yīng)用正則表達式篩選方式
dataframe列應(yīng)用正則表達式篩選
假設(shè)有如下的 DataFrame:
現(xiàn)在需要增加一列,名字為選擇原因,內(nèi)容為在經(jīng)營范圍中進行搜索,如果發(fā)現(xiàn)含有 設(shè)備、汽車、網(wǎng)絡(luò) 中的任何一個詞的,就在選擇原因中寫上這個搜索到的詞,否則不填。
我們可以對列調(diào)用 apply 方法,使用正則表達式來進行匹配,假設(shè) DataFrame 名稱為 df
代碼如下:
import re pattern = r'設(shè)備|汽車|網(wǎng)絡(luò)' # 一行超人 df['選擇原因'] = df['經(jīng)營范圍'].apply(lambda s: ''.join(set(re.findall(pattern, s))) if re.findall(pattern, s) else '')
dataframe通過正則表達式篩選包含的數(shù)據(jù)
示例
import re df=df.fillna('') df.loc[df.apply(lambda x:True if re.search('處理中|暫不解決',x['解決狀態(tài)'],re.I) else False,axis=1)]
判斷
lambda x:True if re.search(正則表達式,字符串,re.I) else False
符合條件的返回True 否則返回False
None處理
df=df.fillna('')
避免正則函數(shù)中接收非字符串內(nèi)容
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python 日志模塊 日志等級設(shè)置失效的解決方案
這篇文章主要介紹了python 日志模塊 日志等級設(shè)置失效的問題及解決方案,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05DjangoWeb使用Datatable進行后端分頁的實現(xiàn)
這篇文章主要介紹了DjangoWeb使用Datatable進行后端分頁的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05