Pandas实现超预期和风险扫描应用

pandas是python里功能很强大的数据分析与处理库,包括excel文件的读取,按标签分类处理,按时间序列处理,数据矩阵的单值分析和统计学计算。因为功能非常强大,所以一个复杂的业务逻辑只需要几十行甚至几行代码就能实现,这得益于库开发者们的工作成果,当然要实现也需要学习者有足够好的数学基础和编程语言基础。

超预期和风险扫描需要的功能如下:

按照secu_code对数据进行分组处理,对每个组的数据按时间序列排序,并且自动提取近N年的factor_value,N年内缺失的数据用--标注。

 

 pandas.read_excel(path)可将xlsx文件转化为dataframe对象

dataframe包含了许多的函数方法,loc用索引对矩阵的精准处理(增删改查)但要注意,iloc用行号对矩阵做增删改查,sort_values的排序,shape的行列数查询以便做整表处理等等

 用列表来分别存储多个不同标签的dataframe,df['attribute']==可以返回一个满足条件的bool series,行数和df匹配,df[series]则返回一个满足true的dataframe,可用在大规模分类里。

df.sortvalue(attribute,ascending)按照某属性值升序True,或降序False排列

排列后index会被打乱,如果要用loc处理数据记得reset_index()

 要实现自动化肯定要对每个分类组用相同的业务逻辑进行处理,所以for m in range(len(list))

左闭右开和数值对应的数据我一直有点模糊不清,所以在这里debug了好长时间。

第二个for是添加新的属性值,N开始取,0-N-1为N个数据才需要填进去,直到最后一个数据也要取,第三个for是取符合条件的0-(i-1)的值

做这种全表处理的时候,一定要注意,初始点是几,结尾点是几,他们和总长度的数学关系是什么,因为前一个循环的值会给后一个循环用,初学者最好拿笔写一写,算一算,程序的价值核心就是把握头就能轻松得到尾,头都把握不住那这点价值也就没有了。

datetime可以和deltatime做时间运算,得到很便于人理解的结果 

 各种dataframe处理好之后concat外连接,再重置一下索引就大功告成了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值