You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
pt5jvslni/Chapter3/为什么要数据预处理.md

2.0 KiB

3.1 数据预处理的重要性

数据挖掘其实就是从数据中学习到规律,再将学习到的规律对未知的数据进行分析。数据的质量直接影响到模型学习的好坏,而我们最开始获取的数据其中绝大多数是“有毛病”的,不利于后期进行分析。所以我们在分析前需要进行数据的预处理。为什么这么说呢?不妨看一下下面这样一个故事情节。

比如有一天你的 boss 找到你说XX 听说你对数据挖掘很熟悉啊,正好我们公司有很多 xx 方面的数据,你看看能不能做一个数据挖掘的项目为我们公司提供一些决策参考。你听到这里是高兴还是悲伤,具体因人而异(要是小弟听到了,绝对会很高兴)。我这里假设你很高兴,接到 boss 的圣旨以后你就屁颠屁颠的找公司的相关数据。毕竟手持 boss 的圣旨所以数据获取应该不是太难拿到数据你就开始疯狂的想使用什么模型呢kNN决策树线性回归等等模型你通过“认真”思考后选择了一个模型迫不及待的把数据往里面喂。当你信心满满的点击 run 后,你会看到下面一行,一行,一行的红色字体,大体意思是这里数字无效,那里数据为空等等,这时候你的内心可能是崩溃的。

虽然仅仅是我编出来的一个故事场景,但是当我们真正地做数据挖掘时,在整个工程中,数据预处理所花费的精力是最多的。就好比,你是一个堪比中华小当家一样的名厨,当你拿到上等的新鲜食材时,你肯定能不费吹灰之力地做出美味佳肴。若尼拿到的是发酸发臭,品相不好的食材,你可能费了九牛二虎之力才能勉强赶上食堂大叔的做菜水准。

因此,数据预处理的效果有多好,基本上就决定了你数据挖掘的效果有多好。

在本章中,将介绍几种数据预处理的常用技巧的意义,以及如何使用sklearn来实现这些常用技巧。