Excel数据清洗:下划线转驼峰命名技巧全解析

前言

在数据处理与分析中,命名格式的统一至关重要。下划线命名(如user_name)常见于数据库导出数据,而驼峰命名(如userName)则在编程和API交互中更为普遍。本文将系统介绍在Excel中实现这一转换的实用技巧。

方法一:公式法(适合小规模数据)

使用Excel函数组合可实现下划线转驼峰,适用于数据量较小的场景。

=SUBSTITUTE(SUBSTITUTE(A2,"_",PROPER(MID(A2,FIND("_",A2)+1,1))),"","")&RIGHT(A2,LEN(A2)-FIND("_",A2))

公式解析:

  • 先找到下划线位置,提取后续字符
  • 使用PROPER函数将下划线后首字母转大写
  • 用SUBSTITUTE移除下划线并拼接

优化版公式(处理多个下划线):

=LET(
  text,A2,
  parts,TEXTSPLIT(text,"_"),
  head,INDEX(parts,1),
  tail,TEXTJOIN("",TRUE,IF(SEQUENCE(,COLUMNS(parts)-1),PROPER(INDEX(parts,,SEQUENCE(,COLUMNS(parts)-1,2))),"")),
  head&tail
)

方法二:VBA宏法(适合批量处理)

编写VBA宏可快速处理大量数据,且支持自定义逻辑。

Function UnderlineToCamel(inputStr As String) As String
    Dim parts() As String
    Dim result As String
    Dim i As Integer
    
    parts = Split(inputStr, "_")
    result = parts(0)
    
    For i = 1 To UBound(parts)
        result = result & UCase(Left(parts(i), 1)) & Mid(parts(i), 2)
    Next i
    
    UnderlineToCamel = result
End Function

使用步骤:

  1. 按Alt+F11打开VBA编辑器
  2. 插入新模块并粘贴代码
  3. 在单元格中使用公式=UnderlineToCamel(A2)

方法三:Power Query法(推荐大数据量)

Power Query是Excel内置的强大ETL工具,适合处理复杂转换。

  1. 选择数据区域 → 数据选项卡 → 从表格/区域获取数据
  2. 在Power Query编辑器中,选择目标列
  3. 添加列 → 自定义列,输入M公式:
= Text.Combine(
    List.Transform(
      Text.Split([原列名],"_"),
      each Text.Proper(_)
    )
  )

Power Query优势:

  • 处理速度优于公式,支持百万行数据
  • 可保存为可刷新查询
  • 支持批量处理多列

进阶技巧与注意事项

特殊情况处理:

  • 全小写转驼峰:直接使用PROPER+SUBSTITUTE组合
  • 含数字的命名:数字后的下划线需特殊处理
  • 批量替换:可先用Ctrl+H替换多余符号

性能对比:

方法适用规模速度学习成本
公式法<1万行
VBA法1-10万行
Power Query>10万行极快中高

结语

掌握下划线转驼峰的技巧,能显著提升数据处理效率。建议根据数据规模和使用频率选择合适的方法:日常小数据用公式,重复任务用VBA,大数据项目用Power Query。实际应用中,建议先备份原始数据,再进行转换操作。