效率笔记

数据清洗的瓶颈在哪:三个常被忽略的细节

2 次阅读

从系统导出的表,日期是文本、金额带空格、姓名前后有看不见的符号。 本文从进阶的角度讲数据清洗,给出5条可执行方法、1个真实案例和3个常见坑。

数据清洗的瓶颈在哪:三个常被忽略的细节

先说一个你可能也有过的感受。

从系统导出的表,日期是文本、金额带空格、姓名前后有看不见的符号。

如果你也有类似的感觉,说明你已经过了『不会』的阶段,卡在别的地方。

这篇不谈基础,只谈数据清洗的瓶颈在哪、怎么破。

瓶颈通常不在你以为的地方

直接对原始表做分析。脏数据上的分析,结论一定是错的。

过了入门阶段之后,问题往往不是『不会』,而是『每一步都做了,但没有一步做到位』。这种状态最难自查,因为你看不出哪里错了。

下面四条,是几个最容易被忽略、但改动之后效果最明显的点。

四条最容易忽略的

这几条不是基础,是过了及格线之后才看得懂的部分。

1. 先复制一份原始表再动手

清洗过程不可逆。保留原始表,出问题能回溯,也能对账。

2. 文本型数字用分列转换

选中整列,数据—分列,直接点完成。比改单元格格式可靠,因为格式只是显示,值还是文本。

3. 日期用统一格式重算

=TEXT(A2,"yyyy-mm-dd") 输出标准文本,或 =DATEVALUE(A2) 转成真日期再统一格式。

4. 删除重复项前先看清哪几列

只勾选关键列做判重,否则同一客户的两条不同订单会被当成重复删掉。

5. 空值用定位批量处理

Ctrl+G 定位条件—空值,一次性填 0 或上一行值。

一个卡住很久的例子

某次客户名单要做短信群发。

做法是:清洗时发现 200 多条手机号带空格和横线。

结果是:用 SUBSTITUTE 去掉后重新校验位数,避免了大量发送失败。

这个例子不复杂,难的是每次都这么做。可以照着做,也可以只挑其中一步先试。

整个过程里没有出现什么复杂工具,改的都是顺序和标准。这也是它能被复制的原因——不需要天赋,只需要不再省那一步。

几个常被问到的问题

问:照着做了,还是没效果,为什么?

答:不要只改格式不改值。文本型数字改成『数值格式』,求和仍然是 0。 先回头检查这一条,多数时候问题在这里。

问:要多久才能见效?

答:第一周通常只是熟悉流程,第二周才开始省时间。如果两周后完全没感觉,回头看看是不是漏了第一步。

问:第一步该从哪里开始?

答:复制一份原始表,命名带日期。从这一件开始,别一次全上。

问:最容易犯的错是什么?

答:一行行手改。几百行还能忍,几千行一定出错。

几个容易踩的坑

这几条比方法更值得看,因为方法可以慢慢学,坑踩一次就要花时间填。

  • 不要在原始表上直接改。改坏了没有退路。
  • 不要忽略全角半角。全角的数字和括号,会让匹配全部失败。

明天就能做的事

不用全做,挑一件今天就能开始的。

  • 复制一份原始表,命名带日期
  • 全表跑一遍 TRIM 和 CLEAN
  • 清洗完对一次总数

可以直接用的一段话

如果你平时用 AI 帮忙,下面这段可以直接复制,把方括号里的内容换成你的情况。

这列数据看起来一样但不相等,可能有哪些隐形字符?给我检测和清除的公式。

最后

到这一步,数据清洗已经不是『会不会』的问题,是『稳不稳』的问题。稳,靠的是每次都不省那一步。

检验有没有进步,就看这一条能不能稳定做到:全表跑一遍 TRIM 和 CLEAN。

评论 0

还没有评论,来说两句。

评论需审核后显示