python 数据提取及拆分的实现代码
作者:杜凯杰 发布时间:2023-11-13 09:13:12
标签:python,数据提取,数据拆分
K线数据提取
依据原有数据集格式,按要求生成新表:
1、每分钟的close数据的第一条、最后一条、最大值及最小值,
2、每分钟vol数据的增长量(每分钟vol的最后一条数据减第一条数据)
3、汇总这些信息生成一个新表
(字段名:[‘time',‘open',‘close',‘high',‘low',‘vol'])
import pandas as pd
import time
start=time.time()
df=pd.read_csv('data.csv')
df=df.drop('id',axis=1) #删除id列
df1=pd.DataFrame(columns=['time','open','close','high','low','vol'])#新建目标数据表
for i in df.groupby('time'): #按时间分组
new_df=pd.DataFrame(columns=['time','open','close','high','low','vol']) #新建空表用于临时转存要求数据
new_df.time=i[1].time[0:1] #取每组时间为新表时间
new_df.open=i[1].close[0:1] #取每组第一个close数据为新表open数据
new_df.close=i[1]['close'].iloc[-1] #取每组最后一个close数据为新表close数据
new_df.high=i[1]['close'].max() #取每组close数据最大值为新表hige数据
new_df.low=i[1]['close'].min() #取每组close数据最小值为新表low数据
new_df.vol=i[1]['vol'].iloc[-1] - i[1]['vol'].iloc[0] #用每组vol数据最大值减去最小值为新表vol数据
df1=pd.concat([new_df,df1],axis=0) #纵向合并数据到目标数据表
df2=df1.sort_values('time') #按time列值进行排序
df2.reset_index(inplace=True, drop=True) #重置行索引
print(df2) #打印目标数据表
stop=time.time() #查看耗时
print('共计耗时:{}秒'.format(stop-start))
来源:https://blog.csdn.net/weixin_44528048/article/details/92023554
0
投稿
猜你喜欢
- 引入我们在使用mysql数据库时,习惯使用int型作为主键,并设置为自增,这既能够保证唯一,使用起来又很方便,但int型的长度是有限的,如果
- 本地路径的创建在做下载操作时,我们一般先把文件下载到本地指定的路径下,然后再做其他使用。为了防止程序出现异常,我们通常需要先判断本地是否存在
- sql语句有一个非常长的sql,用编辑器打开编写的时候太长了导致编写非常吃力,而且容易错乱,我想做的是把A,B,C三个变量赋值到sql中的字
- 问题描述:在pyhton脚本中logging.info("hello world")希望输出'hello wor
- 本文实例讲述了Python使用scrapy采集时伪装成HTTP/1.1的方法。分享给大家供大家参考。具体如下:添加下面的代码到 settin
- 数据标准化是机器学习、数据挖掘中常用的一种方法。包括我自己在做深度学习方面的研究时,数据标准化是最基本的一个步骤。数据标准化主要是应对特征向
- vue2.0已经废弃了过滤器,需要自定义过滤器,用于一些常见的文本格式化。感觉超级好用!!过滤器可以用在两个地方:双花括号插值 和 v-bi
- 在编写自动化测试用例的时候,每次登录都需要输入验证码,后来想把让python自己识别图片里的验证码,不需要自己手动登陆,所以查了一下识别功能
- 简介:numba是Anaconda公司开发的针对Python的开源JIT编译器,用于提供Python版CPU和GPU编程,速度比原生Pyth
- MySQL 触发器MySQL 数据库中触发器是一个特殊的存储过程,不同的是执行存储过程要使用 CALL 语句来调用,而触发器的执行不需要使用
- CSS Modules:局部作用域 & 模块化CSS Modules 为每一个局部类赋予全局唯一的类名,这样组件样式间就不会相互影响
- 代码如下:--获取当前时间 Select getdate() --获取当前年月日 YY代表年,MM代表月,DD代表日,hh代表时
- 前言:大家一般都知道subplot可以画子图,但是subplots也可以画子图,鉴于subplots介绍比较少,这里做一个对比,两者没有功能
- Navicat是一套快速、可靠的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人员及中小企业的需
- 如何做一个随机密码产生器?<%genPassword = ""RandomizeFor&nbs
- 由于python内部的变量其实都是reference,而Tensorflow实现的时候也没有意义去判断输出是否是同一变量名,从而判定是否要新
- 1、在给客户系统巡检时通过rman维护日志发现有rman维护日志报错:RMAN-06207: WARNING: 3 objects coul
- 所见即所得的文本编辑器目前在网上流传的已经有很多了,并且都比较优秀,就我个人而言,用过的有以下几个: ·
- 1. 基本使用remove() 函数可以删除列表中的指定元素语法list.remove( element )参数element:任意数据类型
- 大家都知道,在ASP中可以使用Request.ServerVariables("REMOTE_ADDR")来取得客户端的