簡體   English   中英

如何將一個 pandas 文本列拆分為固定數量的列

[英]How to split one pandas text column into a fixed amount of columns

我有一個 dataframe,其中一個文本列由“/”分隔,並希望通過拆分該列來創建多個列。 我知道我可以通過使用df['col'].str.split('/ ', expand=True)]來實現。 但是,就我而言,無論我得到多少拆分,我都想創建固定數量的列。 例如,我將從以下 df 中創建 4 列,如果 split 沒有返回足夠的塊,則用 Nan 填充最后的列:

    col1                             part_0  part_1  part2  part3
0  "a/b"            =>            0   "a"     "b"     Nan    Nan
1  "a/b/c"                        1   "a"     "b"     "c"    Nan  

我還沒有找到任何允許我這樣做的解決方案,因為它們都根據最大拆分創建列數,這對我不起作用。 你能幫助我嗎? 謝謝!

使用DataFrame.reindexDataFrame.add_prefix

df = pd.DataFrame({'col':['a/b','a/b/c']})

N = 4
df1 = df['col'].str.split('/', expand=True).reindex(range(N), axis=1).add_prefix('part_')
print (df1)
  part_0 part_1 part_2  part_3
0      a      b   None     NaN
1      a      b      c     NaN

暫無
暫無

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

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