簡體   English   中英

pandas 刪除特定單詞之前的所有單詞並獲取該特定單詞之后的前 n 個單詞

[英]pandas remove all words before a specific word and get the first n words after that specific word

我有一個像這樣的 dataframe:

df=pd.DataFrame({'caption':'hello this pack is for you: Jake Peralta. Thanks'})
df

caption
hello this pack is for you: Jake Peralta. Thanks
...
...
...

我正在嘗試在這里獲取收件人的名字和姓氏。 標題欄的格式始終相同。 因此,為您刪除之前的所有內容:並為您獲取后面的前 2 個(此數字可能會更改)單詞

處理名稱中的前導空格:

>>> df.caption.str.split(".").str[0].str.split(":").str[1].str.strip()

1    Jake Peralta
Name: caption, dtype: object

這是一種方法:

df.caption.apply(lambda st: st[st.find(":")+2:st.find(".")])

output:

0     Jake Peralta
Name: caption, dtype: object

也許你可以這樣嘗試

df['caption'].str.split("for you: ").str[1].str.split('.').str[0]

output:

0    Jake Peralta
1      first last

暫無
暫無

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

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