如何修改Pandas数据框某列所有值并转换为整数?
Pandas DataFrame列值处理方案
假设你的DataFrame名为df,目标列名为target_col,按以下步骤操作即可完成需求:
1. 提取数字部分
从字符串中提取出末尾的5位数字,推荐两种可靠方法:
方法一:字符串拆分
通过分隔符ko拆分字符串,直接取最后一段:
df['target_col'] = df['target_col'].str.split('ko').str[-1]
方法二:正则表达式提取
用正则精准匹配连续5位数字,适合格式固定的场景:
df['target_col'] = df['target_col'].str.extract(r'(\d{5})', expand=False)
2. 转换为整数类型
提取后的带前导零字符串可以直接转为整数:
df['target_col'] = df['target_col'].astype(int)
一步式简化写法
如果想精简代码,可将提取与转换操作合并:
df['target_col'] = df['target_col'].str.extract(r'(\d{5})', expand=False).astype(int)
处理后,ID:ko00001会转为整数1,ID:ko99999转为整数99999,完全符合要求。
内容的提问来源于stack exchange,提问作者Recep Durgut
相关产品推荐
相关产品推荐

