如何在Excel中按后缀拆分并分组文件格式数据
按文件后缀分组到不同列的操作方法
用Excel手动处理
- 提取文件后缀
在数据列旁(比如B列)的第一个单元格输入公式=TEXTAFTER(A2, "."),下拉填充所有行,B列就会显示每个文件的后缀(如pdf、xls)。
- 提取文件后缀
- 整理后缀表头
把B列的后缀去重,得到所有需要单独列的类型(比如pdf、xls、txt),依次放在第一行的C、D、E等列作为表头。
- 整理后缀表头
- 筛选对应后缀的文件
在C2单元格输入公式=FILTER($A:$A, $B:$B=C$1, ""),按回车后,C列就会显示所有pdf后缀的文件;把公式向右拖动到其他后缀列,就能自动生成对应列的内容。
旧版Excel无FILTER函数的话,用数组公式:=INDEX($A:$A, SMALL(IF($B:$B=C$1, ROW($A:$A)-ROW($A$1)+1), ROW(A1))),输入后按Ctrl+Shift+Enter,再下拉填充。
- 筛选对应后缀的文件
用Python Pandas代码批量处理
如果数据量较大,用代码更高效:
import pandas as pd # 读取数据(假设你的数据在Excel的Sheet1,列名为"文件名") df = pd.read_excel("你的文件路径.xlsx", sheet_name="Sheet1") # 提取每个文件名的后缀 df["后缀"] = df["文件名"].str.split(".").str[-1] # 方法1:转成宽表,每个后缀对应一列 df["行号"] = df.groupby("后缀").cumcount() result = df.pivot(index="行号", columns="后缀", values="文件名").fillna("") result.to_excel("分组结果.xlsx", index=False) # 方法2:直接为每个后缀新增列(解开注释即可使用) # suffixes = df["后缀"].unique() # for suf in suffixes: # df[suf.upper()] = df[df["后缀"] == suf]["文件名"].reset_index(drop=True) # df[suffixes.str.upper()].to_excel("分组结果.xlsx", index=False)
内容的提问来源于stack exchange,提问作者N S
相关产品推荐
相关产品推荐

