df['focus'] = df['focus'].map( lambda x:x.replace('focus', '').replace('人关注', '').strip() )
这个他好像自动变成str了,怎么换成int
import pandas as pd
import re
df = pd.DataFrame({'A': ['f234skj', 'uu532skdj', 'i839klsjf'],
'B': ['234ii', 'ru790alsjf', '982skhs'],})
print(df)
df['A'] = df.A.map(lambda x: int(re.findall(r'\d+', x)[0]))
print(df)
-------
A B
0 f234skj 234ii
1 uu532skdj ru790alsjf
2 i839klsjf 982skhs
A B
0 234 234ii
1 532 ru790alsjf
2 839 982skhs
把结果用int()转一下
【以下回答由 GPT 生成】
问题解答:
要将字符串转换为整数类型,可以使用Python内置的int()函数。int()函数可以将字符串转换为整数。
在你的代码中,你已经去除了字符串中的非数字字符,所以接下来只需要使用int()函数将字符串转换为整数即可。
下面是修改后的代码示例:
df['focus'] = df['focus'].map(lambda x: int(x.replace('focus', '').replace('人关注', '').strip()))
这样,字符串就会被转换为整数类型。
你也可以使用try-except语句来捕获可能引发的异常,以处理字符串无法转换为整数的情况。示例如下:
df['focus'] = df['focus'].map(lambda x: int(x.replace('focus', '').replace('人关注', '').strip()) if x.replace('focus', '').replace('人关注', '').strip().isdigit() else 0)
在这个示例中,如果字符串无法转换为整数,我将把它处理为0。你可以根据实际需求来修改异常处理的方式。
希望这个解答对你有所帮助!如果还有其他问题,请随时提问。
【相关推荐】