Pandas初体验---Joinquant(聚宽API)---插入列、排序、筛选
文章目录
- 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)---插入列、排序、筛选相关推荐
- Python学习笔记:pandas初体验
Python学习笔记:pandas初体验 一.安装pandas模块 1.安装Python3.7 注意:必须勾选pip(python install package). 2.配置环境变量 3.下载 pa ...
- JoinQuant聚宽本地环境配置
(转自:https://www.joinquant.com/view/community/detail/8aed7dbbfe9e08be4b519c126a19ebea) 对于刚刚涉足量化分析,配置环 ...
- pandas使用心得(一)pandas初体验之处理excel(上)
话不多说,pandas处理excel感觉还是很爽的 1:准备工作(我的是win系统上,所以编码gbk) #!/usr/bin/python #coding=gbk import pandas as p ...
- Pandas初体验——头歌平台答案
第1关 了解数据处理对象--Series # -*- coding: utf-8 -*- from pandas import Series,DataFrame import pandas as pd ...
- 微信小程序初体验-苏州实时公交API
利用聚合数据API快速写出小程序,过程简单. 1.申请小程序账号 2.进入开发 3.调用API.比如"苏州实时公交"小程序,选择的是苏州实时公交API. 苏州实时公交API文档:h ...
- 【头歌】Pandas初体验
第1关:了解数据处理对象--Series # -*- coding: utf-8 -*- from pandas import Series,DataFrame import pandas as pd ...
- 缠论 python 量化_【JoinQuant聚宽社区干货】量化学习资料、经典交易策略、Python入门...
======================= 量化投资学习资料 ======================= 量化投资经典学习资料下载:http://www.joinquant.com/post/ ...
- 【头歌】重生之我在py入门实训中(11):Pandas初体验
创作不易,参考之前,点个赞,收藏,关注一下不过分吧,家人们 第1关:了解数据处理对象--Series 任务描述 本关任务:仔细阅读编程要求,完成相关要求. ---------------------- ...
- pandas 排序 给excel_python 利用pandas处理excel数据(获取特定值,排序,筛选)
这是06年的建模题目中的excel文件,我想这用python处理一下,只需要获取出版社代码为P115的数据,所以需要筛选. Paste_Image.png 1.首先我先选择我所需要的那八行数据 '出版 ...
最新文章
- Java基于Quartz的定时任务调度服务(一)
- numpy教程:快速傅里叶变换模块numpy.fft
- python :re模块基本用法
- 作业调度方案(codevs 1156)
- CentOS6.4系统启动失败故障排查
- 技术人员兼职招聘平台HourlyHerd融资2200万美元C轮融资
- Oracle的dbf文件迁移
- 在文件编辑器中添加dock菜单项_将应用程序添加到Mac 的Dock的简便方法
- Linux设备文件的创建
- 办公室健康小贴士(转)
- 关于遍历字典的二三事
- 笔记-软考高项-错题笔记汇总4
- Java 笔试练习 01: T1~19
- 皮尔森相关系数的python实现_深入理解皮尔逊相关系数python代码
- 24第六季四小时首播进入倒计时!
- 取消pycharm双击shift出现搜索框,但新版找不到ide.suppress.double.click.handler的问题解决
- wxpython 设置热键
- 【SAS NOTE】substr字符串提取函数
- 【计组】字长、数据总线、地址总线
- 比较DirectX和OpenGL的区别
热门文章
- 一步真实解决:TypeError: Cannot handle this data type: (1, 1, 6), |u1
- Havok Physics 2012(1)
- Win 10 WoL 失败检查小记
- 解决gd32 延时2s 错误FFFFFFFF DCD 0xFFFFFFFF ; ?Undefined和HardFault_Handler BusFault_Handler
- MRTG流量监控图配置说明
- mac中修改文件需要管理员权限
- 游戏,天堂幻境,地狱倒影
- macOS Catalina 10.15.4光盘镜像文件制作
- php结合md5的加密解密,php结合md5的加密解密算法实例
- 利用 colgroup保持表列宽度