如何去除os模块获取文件名生成的DataFrame中Amount列的.pdf后缀
解决方法
要去除Amount列的.pdf后缀并计算总和,可通过以下几种简洁的方式实现:
方法一:字符串替换精准去除后缀
直接替换掉末尾的.pdf,再转换为数值类型:
import pandas as pd # 假设你的DataFrame名为df df['Amount'] = df['Amount'].str.replace('.pdf', '', regex=False).astype(float) total_sum = df['Amount'].sum() print(total_sum)
- 加
regex=False是为了避免将.当作正则通配符,确保只匹配精确的.pdf后缀。
方法二:从右侧截断指定后缀
如果所有数据的后缀都是.pdf,可以用rstrip直接从右侧去除:
df['Amount'] = df['Amount'].str.rstrip('.pdf').astype(float) total_sum = df['Amount'].sum()
注意:该方法会移除字符串末尾所有匹配的字符,若存在重复后缀(如68.00.pdf.pdf)也会被全部清除。
方法三:分割字符串提取有效数值
如果金额本身包含小数点(如123.45.pdf),可通过分割拼接的方式保留完整数值:
df['Amount'] = df['Amount'].str.split('.').str[:2].str.join('.').astype(float) total_sum = df['Amount'].sum()
按.分割后取前两部分拼接,能精准提取出带小数的金额数值。
内容的提问来源于stack exchange,提问作者SHW
相关产品推荐
相关产品推荐

