bug整理

这篇文章会不定时的记录一些gbdt,xgboost,pandas实现过程中遇到的一些问题。

1. 错误日志

    DtypeWarning: Columns (6,7) have mixed types. 

    初始化xgboost的DMatrix时,raise TypeError('can not intialize DMatrix from {}'.format(type(data).__name__))

2. 问题分析

    pandas在读取数据时,提示第6,7列数据是混合类型,即可能有异常值。但是在异常值处理后(df.fillna(-1, inplace=True))后,仍然报错;刚开始觉得可能是,某些特定的列,值太大或者太小,因此sample了一部分的数据,运行统计分布的脚本,并没有发现异常,说明只有极少部分的数据有错。看一下所有的列的数据,发现是有一行数据的列数不对,特征的那一列是空;

3. 后期快速定位

    1. 快速sample一部分数据看分布;

    2. awk -F',' 看下数据的列数是不是全部一致,原先遇到这个问题,也会检查head -10的部分是否一致,但这次bug是后面的某一列数据有异常;

    3. grep ',\\N,' train.csv.bk 快速查看一下数据中是否有,\N,其中\N是hive中的空值。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值