你好,我有一个df,比如
COL1 COL2
G1 QANH010008.1:18255-18820(-):Hab_ob
G1 QANH010002:7-10(-):Hab_ob我想创建2个新的COL3和COL4,我将数字放在第一个-之前和第一个-之后
这里的结果应该是
COL1 COL2 COL3 COL4
G1 QANH010008.1:18255-18820(+):Hab_ob 18255 18820
G1 QANH010002:7-10(-):Hab_ob 7 10 发布于 2020-05-10 22:37:27
您可以为此使用命名捕获组,然后加入到原始DataFrame。这个答案包含了来自@MarkWang的几个建议。
df.join(df['COL2'].str.extract(r'(?P<COL3>\d+)\-(?P<COL4>\d+)')) 输出:
Out[206]:
COL1 COL2 COL3 COL4
0 G1 QANH010008.1:18255-18820(-):Hab_ob 18255 18820
1 G1 QANH010002:7-10(-):Hab_ob 7 10https://stackoverflow.com/questions/61713666
复制相似问题