美文网首页
提取交易明细处理细节整理

提取交易明细处理细节整理

作者: 黄yy家的jby | 来源:发表于2020-01-15 10:10 被阅读0次

1,pandas的字符筛选

df1= df[df.基金名称.str.contains('sb')]
df2= df[df.基金名称.str.contains('yl')]

df3 = df[df.基金名称.str.contains('sb|yl')

对于特殊字符的筛选,遵循正则法则加\

df4 = df[df.code.str.contains('\.SZ|\.SH')

2,利率债,信用债判别

(1)发行人:财政局,农业发展银行,开发银行,进出口银行 ->利率债

lilv = df.发行人.str.contains('财政|农业发展银行|开发银行|进出口银行')

(2)类别判别:国债,政策性金融债,地方政府债,央行票据

lilv = (df.证券类别 == '国债') | (df.证券类别 == '政策性金融债')
df_yinhang.loc[lilv,'类别'] = '利率债'
df_yinhang.loc[~lilv,'类别'] = '信用债'

wind二级行业分类:政策银行债 为 利率债

3,修改日期格式

df['买卖时间'] = df['date'].apply(lambda x: \
                 x[0:4]+'年'+x[5:7]+'月'+x[8:]+'日')

4,修改需要字段

df.loc[df.clo== 'a','new_col'] = '1'
df.loc[df.col == 'b','new_col'] = '2'
df.loc[(df.col!='a') & (df.col!='b'),'new_col'] = '3'

df['new_col']= df.col.map({'a':'1','b':'0'})
df['new_col'].fillna('3',inplace=True)

对于非a,b的字段可以在map后用fillna填充

5,去掉字符和增加字符

注意,这是series的性质,而非dataframe,即使只有一列的dataframe,也没有.str的性质
(1)去掉某些字符
只要组合前面的字段

df.str.split('组合').str[0]

(2)增加某些字符

df.str.cat(len(df)*['组合'])

6,连接wind api

不知为何 要先w.start()
我记得之前是不需要的...


from WindPy import w

w.start()

7,wind api 常用函数总结

(1) 交易代码转证券代码
目前还找不到简称转wind id(问了几次客服,言左右顾其他,我觉得就是没有)
简称转wind id 可以先用excel 插件的功能函数刷一下
交易代码转证券代码 cg -> 工具 -> 指标转换

a = W.w.htocode(str(security),'bond',usedf=True).Data
b = pd.DataFrame(a).T

这里很奇怪,不加usedf=True不出来结果,加了也要用.Data来取数,取出来还是list格式,还要再转成Dataframe

(2)基本资料(发行人,分类)
这里在多维数据和日期数据都有,不想再加日期,就直接用多维数据即可

# 发行人,wind2级行业分类
a = W.w.wss("104506.IB", "issuerupdated,windl2type",usedf=True)

8,修改部分columns或index

df = df.rename(index={'北京':'bj'}, columns={'北京':'bj'})

9,连接数据库操作

主要问题是要对应代码

import pfms

df['基金代码'] = df['基金代码'].astype(str).str.zfill(6)
df['sql_ID'] = pd.Series(['PORT.']*len(df)).str.cat(df['基金代码'])

fund_tuple = tuple(df['sql_ID')
sql = """...{}
""".format(fund_tuple)

df2 = pd.read_sql(sql, pfms.pfms_sql)
df2.columns = ['sql_ID','规模']

df_f = pd.merge(df,df2,on='sql_ID')

10,空的位置用另一列填补fillna(可以加一列)

df['A列'].fillna(df['B列'],inplace=True)

相关文章

  • 提取交易明细处理细节整理

    1,pandas的字符筛选 对于特殊字符的筛选,遵循正则法则加\ 2,利率债,信用债判别 (1)发行人:财政局,农...

  • 用MongoDB进行数据整理(一)

    用MongoDB进行数据整理(一)数据提取基础 1.MongoDB简介 数据预处理 Data Wrangling:...

  • 2018-09-21-股票交易费用

    通过对股票交易费用明细的学习, 可以最终得出卖出 股票价格是56元, 总共四手 的交易费用 由上费用明细可得出: ...

  • 开车文明细节

    连续下了好几天雨,路上处处都是水洼,好多车冲进水洼溅了行人一身泥水。每每看到经过水洼处减速慢行的司机,我会给他们行...

  • 交易明细架构练手

    先上效果图: 设计模式:MVVM V层: 经效果图,初步设计的容器视图:列表视图、头视图、月份切换按钮、筛选按钮、...

  • Scharr(边缘提取)

    概念 这个是OpenCV对于Sobel算子的强化,能够提取出一些微小的细节。 效果图对比 ●源图像 ●处理后图像 ...

  • 总结:数据清洗的一些总结

    前言 在整理项目的时候发现清洗过程是一个非常细节的过程,几乎贯穿始终,也是后续步骤特征提取等的前置条件,所以整理如...

  • sql数据库

    提取每月最后一个交易日的收盘价 提取各个指数,每个月总的交易量

  • 建设银行app流水申请

    1、打开建设银行APP,点击“账户” 2、点击“活期账户交易明细申请“ 3、选择“明细申请” 4、导出近半年的流水...

  • 17/20细节也可以忽略

    俗话说细节决定成败。这句话说明细节很重要。 细节这么重要,那是不是我们做事说话的时候,都要注重细节吗?都要把细节表...

网友评论

      本文标题:提取交易明细处理细节整理

      本文链接:https://www.haomeiwen.com/subject/vkeaactx.html