TL;DR版本:
對於有文字列的簡單情況帶有分隔符號並想要創建兩列,最簡單的解決方案是:
df[['A', 'B']] = df['AB'].str.split(' ', n=1, expand=True)
詳細信息:
Andy Hayden 的方法有效地展示了str 的強大功能。 extract() 方法。但是,對於已知分隔符號的簡單分割,.str.split() 方法就足夠了。它對字串列(Series)進行操作並傳回列表列(Series)。
列的 .str 屬性允許我們將列中的每個元素視為字串並有效地應用方法。它有一個索引接口,用於透過索引獲取字串的每個元素,使我們能夠對從 .str.split() 返回的列表進行切片和切塊。
Python 元組解包可用於建立兩個單獨的列清單使用:
df['A'], df['B'] = df['AB'].str.split('-', n=1).str
或者,可以利用.str.split() 中的Expand=True 參數直接產生兩個columns:
df[['A', 'B']] = df['AB'].str.split('-', n=1, expand=True)
expand=True版本在處理不同長度的分割時很有優勢,因為它透過在缺少「分割」的欄位中插入 None 值來處理這種情況。
以上是如何有效地將 Pandas DataFrame 中的字串列拆分為兩個新列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!