需要从Pandas列中提取以下值
8-9 yrs
7-12 yrs
4-6 yrs
该列中需要更新9,12,6。
答案 0 :(得分:0)
将str.extract
与正则表达式结合使用,以获取-
或split
之后的带有索引的数字,必要时最后转换为整数:
df['B1'] = df.A.str.extract('-(\d+)', expand=True)
df['B2'] = df.A.str.split(n=1).str[0].str.split('-').str[1].astype(int)
df['B3'] = df.A.str.split('-|\s+').str[1].astype(int)
print (df)
A B1 B2 B3
0 8-9 yrs 9 9 9
1 7-12 yrs 12 12 12
2 4-6 yrs 6 6 6
答案 1 :(得分:0)