机器学习-每日一坑

Posted 一棵棵大树

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习-每日一坑相关的知识,希望对你有一定的参考价值。

问题描述
若样本含有混合数据类型,比如数据本身是int,但混合进字符型,那么读取后,该列dtypes会升级成object。 导致数据使用不便。如下:

列名:gl_id_h0_time,数据类型:object
列名:gl_id_h0_list_level,数据类型:object
列名:gl_id_h0_group_num,数据类型:object
列名:gl_id_h0_orgType,数据类型:object
列名:gl_id_h0_orgnum,数据类型:object
列名:gl_id_h1_time,数据类型:object
列名:gl_id_h1_list_level,数据类型:object
列名:gl_id_h1_group_num,数据类型:object
列名:gl_id_h1_orgType,数据类型:object
列名:gl_id_h1_orgnum,数据类型:object
列名:gl_id_h2_time,数据类型:object
列名:gl_id_h2_list_level,数据类型:object
列名:gl_id_h2_group_num,数据类型:object
列名:gl_id_h2_orgType,数据类型:object
列名:gl_id_h2_orgnum,数据类型:object
列名:gl_id_h3_time,数据类型:object
列名:gl_id_h3_list_level,数据类型:object
列名:gl_id_h3_group_num,数据类型:object

解决方案:
读取数据时,跳过目标行,代码如下:
pd.read_csv("./sample/test.csv",encoding="utf-8",skiprows=[1])

经验总结:
1、skiprows是个集合,可以对数据进行分析有问题的记录,获取行索引,进行批量跳过。
2、读取数据之后进行问题数据删除,无法解决该问题,因为数据已经完成了读取
3、结合 data.select_dtypes(include=["int64","float64"]) 进行目标列数据选取

以上是关于机器学习-每日一坑的主要内容,如果未能解决你的问题,请参考以下文章

每日一坑-win虚拟机调分辨率

那些年深度学习所踩过的坑-第一坑

每日一书《数据挖掘,实用机器学习工具与技术》

每日一书丨机器学习解决实际问题的流程

每日一书|国内首本机器学习算法评估实战

什么是好的 AWS 解决方案(DB、ETL、批处理作业)来存储大量历史交易数据(每日刷新)以进行机器学习分析?