2017.03.21回顾 WHERE GROUP BY 和 GROUP BY HAVING None numpy矩阵相关 matplotlib.pyplot画图

来源:互联网 发布:淘宝外卖可以代付吗 编辑:程序博客网 时间:2024/06/03 14:47

1、昨天模型主要做了几个改动,添加了一种机制去限制快速还款的老客户的下次贷款金额,修改了老客户进入通过域,随机通过和拒绝比例,在这修改的过程中是否遇到什么技术难题?没什么新问题,只是上线前测试是非常必要的!好几个问题都是测试中发现的!

2、我之前有个SQL误区,我认为group by了条件语句只能在后面having去引导,但是实践中我发现,where语句后是可以跟group by语句的,group by语句后面用having的场景一般是count(*)这种条件,having后面好像也可以跟普通条件,我刚去进行了实验,在MYSQL环境下

SELECT * FROM alchemist.t_loans GROUP BY account_id HAVING product_no = '2A'

这个SQL的顺序是先按account_id group by,然后having后条件进行筛选

SELECT * FROM alchemist.t_loans WHERE product_no = '2A' GROUP BY account_id

这个SQL的顺序是先按WHERE的条件进行筛选,然后按account_id去重,这里提一点关于这个group by去重的机制,似乎是随机的(或者说有它内在的某一准则),反正在MYSQL中,有一点可以肯定的是他不是取同组排序最靠前的那一条,至于内在具体的机制,暂时还没必要深入研究

3、python的None就是NoneType,判断的时候一般是用if a is None

4、python中的trunc到百位没有查到相关函数,我用的round(x/100) * 100

5、17点后开始继续研究线性回归,矩阵可逆的一个充要条件是行列式的值等于0,我又看了一下行列式的值是怎么计算,行列式的值是所有不同列不同行的元素乘积的累加,符号由列序号是偶排列还是奇排列确定,所谓偶排列是一个排列中逆序数之和为偶数的排列,顺序排列逆序数为0是偶排列,行列式中行或列只要有一对vector线性相关,这个时候行列式的结果就等于0,不可逆,没办法用最小二乘法求解,最小二乘的式子用numpy的matrix对象,表达起来相当简单

6、python画图函数是用到

import matplotlib.pyplot as plt

plt.figure(1)
给图像命名,1就是figure1

ax = fig.add_subplot(111)
添加子图,参数三个数字,前面两位表示几乘几的子图,1*1的子图,该子图位置编号为1

ax.scatter(x,y)
画散点图scatter

ax.plot(x,y)
画普通的折线图,这里x需要排序

plt.show()
最后呈现图像

我之前画图是直接

plt.xlabel('x')plt.ylabel('y')plt.plot(x,y)plt.show()
7、矩阵操作,import numpy as np,np.mat(二维list)转换成一个matrix对象,matrix.flatten()会把每一行拉平成1*1的矩阵,matrix.A转换成数组,类型名叫做ndarray,matrix.copy()直接复制矩阵,matrix.sort(0或1),这个排序并不是按行或按列排序,而是每行的元素排序,或者每列的元素排序,行列并非是一个整体,0是行,1是列

8、晚上回家执行力还是可以的,只是运动强度不够,还需加强!今天继续!加油!








0 0
原创粉丝点击