文章目录

  • 1.原始数据的样子:
  • 2.插入新列,并计算新的值
  • 3.对列进行排序
  • 4.对列筛选
    • 5.前5条数据

1.原始数据的样子:

接口可以返回的信息如下,是格式化数据pandas格式的,希望做一些简单的排序和筛选

资金流向信息接口

字段名 含义 备注
date 日期
sec_code 股票代码
change_pct 涨跌幅(%)
net_amount_main 主力净额(万) 主力净额 = 超大单净额 + 大单净额
net_pct_main 主力净占比(%) 主力净占比 = 主力净额 / 成交额
net_amount_xl 超大单净额(万) 超大单:大于等于50万股或者100万元的成交单
net_pct_xl 超大单净占比(%) 超大单净占比 = 超大单净额 / 成交额
net_amount_l 大单净额(万) 大单:大于等于10万股或者20万元且小于50万股或者100万元的成交单
net_pct_l 大单净占比(%) 大单净占比 = 大单净额 / 成交额
net_amount_m 中单净额(万) 中单:大于等于2万股或者4万元且小于10万股或者20万元的成交单
net_pct_m 中单净占比(%) 中单净占比 = 中单净额 / 成交额
net_amount_s 小单净额(万) 小单:小于2万股或者4万元的成交单
net_pct_s 小单净占比(%) 小单净占比 = 小单净额 / 成交额

from jqdatasdk import *
import pandas as pdauth('user_name', "password")            # 填写自己的用户名和密码
my_list = ["002080", "002056", "600372", "300114", "000768", "002179", "600685", "603757", "002157", "300413", "300602", "300511", "000977"]
new_list = normalize_code(my_list)     # 格式化自己的股票代码,成为标准数据格式
print(new_list)df = get_money_flow(new_list, '2020-07-16', '2020-07-16')       # 这里才是我们需要的格式化数据# 如果没有如下4个设置,在pycharm里面打印的东西不全,有省略
pd.set_option('display.max_columns', 10000)               # 设置打印的列数
pd.set_option('display.max_colwidth', 10000)          # 设置打印的列宽
pd.set_option('display.max_rows', 10000)              # 设置打印的行数
pd.set_option('display.width', 10000)                 # 设置打印的行宽
print(df)

2.插入新列,并计算新的值

以下代码,都是衔接第一部分的所有代码实现的。因为冗余,就只贴出来新增部分


length = len(my_list)                      # 计算原始数据共计多少行
data_list = [""] * length                    # 生成N个元素的列表df.insert(3, 'main_ocp', data_list)            # 在索引为3的位置,插入新的列,列名叫main_ocp,此列的每个元素为上面我们创建的元素(此时的元素是什么不重要,先占位,后续再修改)
# df["main_ocp"] = data_list             这种方式插入一列也行,但是默认是最后一列df["main_ocp"] = abs(df["net_pct_main"])    # 最终,计算新列里面,每个元素的值,为net_pct_main列值的绝对值
print(df)

红色部分是蓝色部分的绝对值

3.对列进行排序

sort_values 使用说明:

参数 说明
by 指定列名(axis=0或’index’)或索引值(axis=1或’columns’)
axis 若axis=0或’index’,则按照指定列中数据大小排序;若axis=1或’columns’,则按照指定索引中数据大小排序,默认axis=0
ascending 是否按指定列的数组升序排列,默认为True,即升序排列
inplace 是否用排序后的数据集替换原来的数据,默认为False,即不替换
na_position {‘first’,‘last’},设定缺失值的显示位置

df_new = df.sort_values(by='main_ocp', ascending = False)      # 默认排序是升序,False是降序
print(df_new)                                                   # 注意,此处需要有个新表名接收新的排序结果

如上排序中,如果是多列进行排序呢?


df.sort_values(by=["data", "age"], inplace=True, ascending=[True, False])
print(df)# df是上一步,得到的格式化数据表格
# inplace 为True,就相当于把新的排序替换df表格的排序了
# data列升序,age列降序

4.对列筛选


df_filter = df_new[df_new["main_ocp"] >= 5]
print(df_filter)

5.前5条数据


df_new = df.sort_values(by='net_amount_main', ascending=False).head(5)
print(df_new)

可以在排序之后,使用head(XX), 获取前XX条数据

Pandas初体验---Joinquant(聚宽API)---插入列、排序、筛选相关推荐

  1. Python学习笔记:pandas初体验

    Python学习笔记:pandas初体验 一.安装pandas模块 1.安装Python3.7 注意:必须勾选pip(python install package). 2.配置环境变量 3.下载 pa ...

  2. JoinQuant聚宽本地环境配置

    (转自:https://www.joinquant.com/view/community/detail/8aed7dbbfe9e08be4b519c126a19ebea) 对于刚刚涉足量化分析,配置环 ...

  3. pandas使用心得(一)pandas初体验之处理excel(上)

    话不多说,pandas处理excel感觉还是很爽的 1:准备工作(我的是win系统上,所以编码gbk) #!/usr/bin/python #coding=gbk import pandas as p ...

  4. Pandas初体验——头歌平台答案

    第1关 了解数据处理对象--Series # -*- coding: utf-8 -*- from pandas import Series,DataFrame import pandas as pd ...

  5. 微信小程序初体验-苏州实时公交API

    利用聚合数据API快速写出小程序,过程简单. 1.申请小程序账号 2.进入开发 3.调用API.比如"苏州实时公交"小程序,选择的是苏州实时公交API. 苏州实时公交API文档:h ...

  6. 【头歌】Pandas初体验

    第1关:了解数据处理对象--Series # -*- coding: utf-8 -*- from pandas import Series,DataFrame import pandas as pd ...

  7. 缠论 python 量化_【JoinQuant聚宽社区干货】量化学习资料、经典交易策略、Python入门...

    ======================= 量化投资学习资料 ======================= 量化投资经典学习资料下载:http://www.joinquant.com/post/ ...

  8. 【头歌】重生之我在py入门实训中(11):Pandas初体验

    创作不易,参考之前,点个赞,收藏,关注一下不过分吧,家人们 第1关:了解数据处理对象--Series 任务描述 本关任务:仔细阅读编程要求,完成相关要求. ---------------------- ...

  9. pandas 排序 给excel_python 利用pandas处理excel数据(获取特定值,排序,筛选)

    这是06年的建模题目中的excel文件,我想这用python处理一下,只需要获取出版社代码为P115的数据,所以需要筛选. Paste_Image.png 1.首先我先选择我所需要的那八行数据 '出版 ...

最新文章

  1. Java基于Quartz的定时任务调度服务(一)
  2. numpy教程:快速傅里叶变换模块numpy.fft
  3. python :re模块基本用法
  4. 作业调度方案(codevs 1156)
  5. CentOS6.4系统启动失败故障排查
  6. 技术人员兼职招聘平台HourlyHerd融资2200万美元C轮融资
  7. Oracle的dbf文件迁移
  8. 在文件编辑器中添加dock菜单项_将应用程序添加到Mac 的Dock的简便方法
  9. Linux设备文件的创建
  10. 办公室健康小贴士(转)
  11. 关于遍历字典的二三事
  12. 笔记-软考高项-错题笔记汇总4
  13. Java 笔试练习 01: T1~19
  14. 皮尔森相关系数的python实现_深入理解皮尔逊相关系数python代码
  15. 24第六季四小时首播进入倒计时!
  16. 取消pycharm双击shift出现搜索框,但新版找不到ide.suppress.double.click.handler的问题解决
  17. wxpython 设置热键
  18. 【SAS NOTE】substr字符串提取函数
  19. 【计组】字长、数据总线、地址总线
  20. 比较DirectX和OpenGL的区别

热门文章

  1. 一步真实解决:TypeError: Cannot handle this data type: (1, 1, 6), |u1
  2. Havok Physics 2012(1)
  3. Win 10 WoL 失败检查小记
  4. 解决gd32 延时2s 错误FFFFFFFF DCD 0xFFFFFFFF ; ?Undefined和HardFault_Handler BusFault_Handler
  5. MRTG流量监控图配置说明
  6. mac中修改文件需要管理员权限
  7. 游戏,天堂幻境,地狱倒影
  8. macOS Catalina 10.15.4光盘镜像文件制作
  9. php结合md5的加密解密,php结合md5的加密解密算法实例
  10. 利用 colgroup保持表列宽度