簡體   English   中英

如何使用“變量”分隔符將字符串列拆分為兩列?

[英]How to split a string column into two columns with a 'variable' delimiter?

我從 PDF 數據表中提取了一個粗略的 df,該數據表由包含字符串的單列組成。 列中的每個條目都采用以下形式:

Mayor ............... Paul Jones
Senator ................. Billy Twister
Congress Rep. .......... Chris Rock
Chief of Staff ....... Tony Allen

我想使用string.split(pat=".")使用句點字符串將這些字符串拆分為TitleName兩列。 但是,對於句點字符串分隔符,列中的每個條目具有不同的長度。 正如預期的那樣,如果我使用pat="." pat="......." ,例如,我最終得到不一致的拆分。

我的目標是為定界符實現一種方法,以便能夠處理給定最小和最大長度的一系列句點字符串長度。 我用谷歌搜索了這個問題,但找不到直接的答案。 這有可能實現嗎?

str.split與正則表達式\s+\.+\s+一起使用,它由 1+ 個空格、1+ 個句點、1+ 個空格分割:

df = pd.DataFrame({'A': ['Mayor ............... Paul Jones', 'Senator ................. Billy Twister', 'Congress Rep. .......... Chris Rock', 'Chief of Staff ....... Tony Allen']})

df[['Title', 'Name']] = df['A'].str.split('\s+\.+\s+', expand=True)

#                                          A           Title           Name
# 0         Mayor ............... Paul Jones           Mayor     Paul Jones
# 1  Senator ................. Billy Twister         Senator  Billy Twister
# 2      Congress Rep. .......... Chris Rock   Congress Rep.     Chris Rock
# 3        Chief of Staff ....... Tony Allen  Chief of Staff     Tony Allen

暫無
暫無

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

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