Pandas 熊猫系列萃取液,有规律的萃取

Pandas 熊猫系列萃取液,有规律的萃取,pandas,Pandas,需要从具有以下值的列中提取以下内容 8-9 yrs 7-12 yrs 4-6 yrs 将需要在列中更新9,12,6。与regex一起使用,用于在-或拆分后获取数字,并进行索引,如果需要,最后转换为整数: 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.spli

需要从具有以下值的列中提取以下内容

8-9 yrs
7-12 yrs
4-6 yrs
将需要在列中更新9,12,6。

与regex一起使用,用于在
-
拆分后获取数字,并进行索引,如果需要,最后转换为整数:

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
与正则表达式一起使用,用于在
-
拆分后获取数字,并进行索引,如有必要,最后转换为整数:

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

带有
df
A列的数据帧

使用带有正则表达式的
findall
函数的
re

import re
df.a.apply(lambda x : re.findall(r'-(\d+)', x))


带有
df的数据帧
带有
A列

使用带有正则表达式的
findall
函数的
re

import re
df.a.apply(lambda x : re.findall(r'-(\d+)', x))


我需要提取函数,使用您的正则表达式,它可以像预期的那样工作HI Pushparaj,这将工作
df.a.apply(lambda x:x.str.extract('-(\d+))
我需要提取函数,使用您的正则表达式,它可以像预期的那样工作HI Pushparaj,这将工作
df.a.apply(lambda x:x.str.extract('-(\d+))
对不起,我的答案不起作用?为什么接受错误的答案?对不起,我的答案不起作用?为什么接受错误的答案?