根据字符数拆分字符串列

时间:2019-06-25 09:24:33

标签: python pandas

我在数据框中有以下一列:

columnA
EUR590
USD680
EUR10000,9
USD40

如何根据前三个字符拆分数据框,

columnA columnB
590     EUR
680     USD
10000,9  EUR
40       USD

2 个答案:

答案 0 :(得分:1)

df['columnB']=df['columnA'].str.slice(stop=3)
df['columnA']=df['columnA'].str.slice(start=3)

答案 1 :(得分:1)

另一种方法是将series.str.extract()与模式配合使用:

df1=df.columnA.str.extract('(?P<columnA>.{3})(?P<columnB>.{1,})')
print(df1)

  columnA  columnB
0     EUR      590
1     USD      680
2     EUR  10000,9
3     USD       40

下面的正则表达式图:

Regex graph