You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas中按点(.)分割文本并在DataFrame中新增列

实现DataFrame文件后缀映射为文件类型

现有DataFrame df1 如下:

Filename
apple.pdf
sample.xlsm
new.docx
Arigo.tiff
sec.docx
sample2.xlsm

需要生成包含Filename和Filetype列的DataFrame df2:

FilenameFiletype
apple.pdfPDF
sample.xlsmexcel
new.docxdocument
Arigo.tifftiff
sec.docxdocument
sample2.xlsmexcel

实现步骤

  1. 提取文件名中的后缀部分
  2. 定义后缀与目标文件类型的映射规则
  3. 将后缀转换为对应类型并新增列到原DataFrame

代码实现

首先导入依赖库并构造示例DataFrame:

import pandas as pd

# 构造示例df1
data = {'Filename': ['apple.pdf', 'sample.xlsm', 'new.docx', 'Arigo.tiff', 'sec.docx', 'sample2.xlsm']}
df1 = pd.DataFrame(data)

定义后缀映射字典:

type_mapping = {
    'pdf': 'PDF',
    'xlsm': 'excel',
    'docx': 'document',
    'tiff': 'tiff'
}

生成Filetype列:

# 分割文件名取后缀,转小写后映射为对应类型
df1['Filetype'] = df1['Filename'].str.split('.').str[-1].str.lower().map(type_mapping)

执行后df1即为目标df2,可通过print(df1)查看结果。

代码说明

  • str.split('.').str[-1]:按点分割文件名,取最后一段作为后缀
  • str.lower():统一后缀为小写,避免大小写差异导致映射失败
  • map(type_mapping):利用预定义字典完成后缀到文件类型的转换

内容的提问来源于stack exchange,提问作者Vivek kanna Jayaprakash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 17:22:18