2017.07.12回顾 python mysql decimal case when漏掉一种情况 mysql字符串参与算术运算

今天继续进行新模型实施的工作
1、上午完成了审批金额计算的模块,主要就是涉及到和之前系数转换的问题,反正就是个体力活啦,没什么新的东西
2、下午主要是布上knowru,测试,修改各种bug,看看有没有哪个bug的解决可以记录一下
  • mysql-python这个模块抓了一个(mysql数据类型为decimal的字段+mysql数据类型为decimal的字段),这个类型还是decimal,取出赋值给python变量的时候类型还是为python的Decimal类型,最后三方平台wrapper无法对Decimal的value进行json序列化
  • 还有一个bug是赋值问题,在使用CASE WHEN做woe编码的时候没有做其中一个值的woe编码,这里就涉及到如果SQL的时候CASE WHEN漏掉其中一个值,不会保留原来的值,而是这个没有case when的值会变成null,这个null最后取出来赋值给python变量就是None,再替换到另外一个SQL的SELECT语句后面,就会报错[Err] 1054 - Unknown column 'None' in 'field list'
  • 后来我把上面的None加了引号,变成字符串,惊奇发现居然SQL还能跑,单独拿出来发现mysql里面字符串可以参与算术运算,值被当做0
3、最后模型主体部分基本通过,接下来花部分时间尝试rolling variable的添加,为iv工具包,多加了一个功能,解决了我一直以来的一个问题,就是可以指定某些类别较多的分类变量,强制不要被离散化,因为我内部判断类别变量和连续变量的逻辑是set后元素个数是否多余10,解决方案是多加了一个参数list,可以传进去告诉程序那些变量不需要被离散化
4、改好了后,我重新抓取了数据集,但是发现存在bug,bug原因不明,应该是其他变量引起的,我当时没有深究,继续研究这个省份变量,发现某些需要合并,合并方法讨论了下,大概几种思路
5、关于之前AS打我脸的事情,目前的结果我略微领先,希望可以保持,到了差异足够大的时候就可以还击了
6、还有另外的合作方也想打我脸,我小花了点儿时间查了相关的信息,反正还是略微领先就是了
7、其他还有各种杂事啊,无用对话啊,任务安排啊云云
总体,效率一般,在此基础上继续加油!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值