你确定你需要一个更快的方法吗?你现在的方法没有那么慢。以下更改可能会简化,但不一定会更快:

步骤1:从数据帧列表中随机抽取一个样本(带替换项)rand_stocks = np.random.randint(0, len(data), size=batch_size)

可以将此数组rand_stocks视为要应用于数据帧系列的索引列表。该大小已经是批处理大小,因此不需要while循环和第156行的比较。在

也就是说,您可以迭代rand_stocks并访问股票,如下所示:

^{pr2}$

第二步:为你随机选择的每只股票获取一个随机的数据范围。在start_idx = np.random.randint(offset, len(stock)-timesteps)

d = data_t[start_idx:start_idx+timesteps]

我没有你的数据,但我把它放在一起:def random_sample(data=None, timesteps=100, batch_size=100, subset='train'):

if subset=='train': offset = 0 #you can obviously change this back

rand_stocks = np.random.randint(0, len(data), size=batch_size)

ret_data = []

for idx in rand_stocks:

stock = data[idx]

start_idx = np.random.randint(offset, len(stock)-timesteps)

d = stock[start_idx:start_idx+timesteps]

ret_data.append(d)

return ret_data

创建数据集:In [22]: import numpy as np

In [23]: import pandas as pd

In [24]: rndrange = pd.DateRange('1/1/2012', periods=72, freq='H')

In [25]: rndseries = pd.Series(np.random.randn(len(rndrange)), index=rndrange)

In [26]: rndseries.head()

Out[26]:

2012-01-02 2.025795

2012-01-03 1.731667

2012-01-04 0.092725

2012-01-05 -0.489804

2012-01-06 -0.090041

In [27]: data = [rndseries,rndseries,rndseries,rndseries,rndseries,rndseries]

测试功能:In [42]: random_sample(data, timesteps=2, batch_size = 2)

Out[42]:

[2012-01-23 1.464576

2012-01-24 -1.052048,

2012-01-23 1.464576

2012-01-24 -1.052048]

python pandas 官网_时间序列的Python-Pandas随机抽样相关推荐

  1. 财码python官网_财码Python小实验之融资分析

    从本篇开始,财码小秘书将带小伙伴们进入投融资专题,今天的主题是融资分析小实验,欢迎大家来撩 . 01 融 资 概 述融资是指企业为满足生产经营资金的需要,向企业外部单位或个人以及从其企业内部筹措资金的 ...

  2. python docx官网_【记录】尝试用DocxyGen为Python代码生成文档

    [背景] 之前折腾技术的时候,或多或少,知道一个东西: DocxyGen 是用于从代码生成文档的. 最近,又从: -> 该地址无效,但是自己手动输入地址,而找到: 看到页面右下角,就显示了,此在 ...

  3. python numpy官网_官网Numpy教程

    一: 简单介绍 numpy 的主要对象是同类型的多维数组.它通常是以表格的形式存在,表格里面的元素具有相同的类型,可以通过含正整数的元组索引到相应的元素.在NumPy中,维度被叫做轴 例如,一个3维的 ...

  4. python 网易公开课官网_哪里有python视频教程全集下载?

    python很适合初学者学习,语法简单,代码可读性高,非常容易入门. 更重要的是其地位一直在上升,那说明越来越多的人发现了python的重要性,使用python的企业越来越多,另一方面也说明,pyth ...

  5. python中国官网-中蟒 (中文 Python) 編程語言網站 chinesepython

    1. 什么是中蟒 ? 中蟒可以算是 Python 編程語言的一個中文翻譯版. 不過除了用戶信息, 中蟒還翻譯了 Python 的保留字, 內建函數, 類別定義等等. 也就是說, 在一般情況下, 你可以 ...

  6. python官网怎么下载-python下载官网

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 1.下载pythonpython下载步骤:(1). 进入python下载官网:ht ...

  7. python下载官网-python下载官网

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 1.下载pythonpython下载步骤:(1). 进入python下载 ...

  8. python官网下载安装教程-Python和Anoconda和Pycharm安装教程

    简介 Python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的.大型项目的开发. ...

  9. 蓝桥杯官网刷题记录python

    蓝桥杯官网刷题记录python 由于很多题都会在2020.2021.2022年省赛出现,有的在前面文章里做过的这里就不会再说了 一.空间 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都 ...

最新文章

  1. 用js监控分辨率调整背景图片宽度_【AIDA 64】用安卓手机监控电脑运行状态
  2. 3人2周上线,2人1周上线,Solo明天上线!开发周期果然不能用搬砖模式计算......
  3. Linux下rpm包x86、i386、i486、i586、i686和x86_64 后缀含义
  4. 树莓派进阶之路 (019) - 树莓派通过filezilla,samba与PC文件共享(转)
  5. php list 转tree,PHP 数组转树形结构
  6. python format
  7. java7 arm_zynq7000系列移植—JDK1.7 移植到嵌入式ARM平台
  8. linux安装多版本php_linux如何安装多个php版本
  9. onestage方法_FCOS : 找到诀窍了,anchor-free的one-stage目标检测算法也可以很准 | ICCV 2019...
  10. 根目录_macOS Catalina 根目录锁定问题解决方法
  11. Java类的声明详解
  12. 笔记本电脑怎么拆开后盖_新手怎么拆解笔记本?笔记本拆机注意事项 (全文)
  13. 机械臂抓取学习笔记四
  14. ABP文档 - Web Api 控制器
  15. Cocos Creator之打包设置横竖屏
  16. CList POSITION
  17. AI厂工什么时候开始赛博搬砖?
  18. 心通达OA开发环境搭建,可在心通达OA平台上做业务管理二开,贡献您业务、开发能力
  19. java 取一个整数a从右端开始的4~7位。
  20. uniapp引用阿里矢量图

热门文章

  1. JDK1.8的新特性
  2. Ubuntu下安装Matlab并破解
  3. Django 页面跳转
  4. Sanic框架下部署Pytorch模型
  5. 计算机启动报警,我台式电脑开机报警四声什么問題?
  6. qt实现简单的视频播放器
  7. Jersey的配置(4)
  8. 2022-2028全球硬胶囊行业调研及趋势分析报告
  9. 理性解析东数西算:“电”在哪里,“算”就在哪里?
  10. 论文《Efficient palette-based decomposition and recoloring of images via RGBXY-space geometry》笔记