Python Pandas 选出指定类型的所有列,统计列的各个类
2020-08-05 本文已影响0人
Raiders_心理学
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
更多包含丰富源数据源代码的 Pandas 高阶操作,数据可视化,以及商业数据分析的原理+实战案例,尽在公众号 “ 数据分析与商业实践 ”
在这里插入图片描述
更多包含丰富源数据源代码的 Pandas 高阶操作,数据可视化,以及商业数据分析实战案例,尽在公众号 “ 数据分析与商业实践 ”
通过本文,你将知晓如何利用 Pandas 选出指定类型的所有列用于后续的探索性数据分析,这个方法在处理大表格时非常有用(如列非常多的金融类数据),如果能够较好的掌握精髓,将能大大提升数据评估与清洗的能力,为后续建模提供高质量的数据。
这个技巧并没有什么原理性的东西,所以这里直接呈现代码。
数据读入
在这里插入图片描述统计列的各个类型的数量
在这里插入图片描述选出类型为 object 的所有列
在机器学习与数学建模中,数据类型为 float 或者 int 的才好放入模型,像下图这样含有不少杂音的可不是我们想要的。当然,include=["int", "float"] 便表示选出这两个类型的所有列,你可以自行举一反三。
在这里插入图片描述
对 object 列们进行探索性数据分析
在这里插入图片描述在这里插入图片描述
通过打印出来的信息,我们可以很快知道每一个 object 列大概需要怎么清洗,但许多优秀的数据分析师并不会马上着手操作,而是都先记录下来,最后再一起操作,毕竟可能有可以复用的代码或可以批量进行的快捷操作😀
这是笔者在进行金融数据分析清洗时的记录(根据上面的步骤后发现的需要对 object 类型列进行的操作)
- terms:字符串 month 去掉,可能需要适当的分箱
- int_rate(interesting rate):去掉百分号
- emp_length:工作年限混入了 <,+ 等无关字符串,如 10+,<1 years 等,需要 先 replace 然后再 map 或者 apply 替换一下
- title: 该列分类太多,快两万,占到了数据集的 2/3,查找一些业务看看是否属于需要删去的无关变量
- addr_state:地址变量虽然只有 50 个分类,但似乎也无太大作用,探究删去
- earliest_cr_time:该列有 526 各类,可能需要根据业务知识进行离散化分箱
- home_ownership:房屋所有情况,全款支付了的给个1,其余的都给 0
- 未完待续.....
先列出来再统一操作的好处是当发现处理错误或者需要更改方法时,还能快速找到自己当时的思路。
更多包含丰富源数据源代码的 Pandas 高阶操作,数据可视化,以及商业数据分析的原理+实战案例,尽在公众号 “ 数据分析与商业实践 ”
Pandas 的技巧看似琐碎,但积累到一定程度后,便可以发现许多技巧都存在共通之处。小事情重复做也会成为大麻烦,所以高手都懂得分类处理。
贯通了 3 个核心,我们才能省时省事,成为别人眼中的高手:
- 大量重复的工作懂得批处理。
- 反复要做的固定操作固化成 " 模板 “,” 套路 "。
- 碰到异常情况,知道准确高效的解决。
[图片上传失败...(image-305b72-1596202496513)]
后续会陆续更新 Python 场景实践的原理与代码实战
在这里插入图片描述