我有一个excel文件,我试图从中提取信息,特别是从第5列('摘要')。 “摘要”的每个元素都是'是一个字符串;我想找到所提到的人的年龄。年龄信息将是" John Smith,23岁,"或者"约翰史密斯,一个23岁的"。第一行数据不是有效的,所以我跳过了它。我无法弄清楚我做错了什么。我正在搜索2位数后跟逗号或短划线,然后尝试返回2位数。 谢谢你的帮助
import pandas as pd
mf=pd.ExcelFile(myFile)
m=mf.parse('myDataFile')
age = []
s = m['Summary']
for a in s[1:]:
x = re.search('[0-9]{2}',a)
y=x+1
age.append(a[x,y])
答案 0 :(得分:0)
我没有意识到正则表达式返回了一个“匹配”对象,而不是一个整数。我能够使用它来实现它:
s=m['Summary']
age =[]
n=re.compile('\d\d(,|-)')
for t in s:
x= re.search(n,t)
if x:
b=x.group(0)
age.append(b[:2])
else:
age.append("NA")