标签: time-series

预测时间序列数据

我做了一些研究,我一直在寻找解决方案.我有一个时间序列数据,非常基本的数据框,让我们称之为x:

Date        Used
11/1/2011   587
11/2/2011   578
11/3/2011   600
11/4/2011   599
11/5/2011   678
11/6/2011   555
11/7/2011   650
11/8/2011   700
11/9/2011   600
11/10/2011  550
11/11/2011  600
11/12/2011  610
11/13/2011  590
11/14/2011  595
11/15/2011  601
11/16/2011  700
11/17/2011  650
11/18/2011  620
11/19/2011  645
11/20/2011  650
11/21/2011  639
11/22/2011  620
11/23/2011  600
11/24/2011  550
11/25/2011  600
11/26/2011  610
11/27/2011  590
11/28/2011  595
11/29/2011  601
11/30/2011  700
12/1/2011   650
12/2/2011   620
12/3/2011   645
12/4/2011   650
12/5/2011   639
12/6/2011   620
12/7/2011   600
12/8/2011 …
Run Code Online (Sandbox Code Playgroud)

r time-series xts

25
推荐指数
3
解决办法
4万
查看次数

时间序列预测(最终使用python)

  • 时间序列预测/回归有哪些算法?
    • 那么使用神经网络呢?(关于这个主题的最佳文档?)
    • 是否有python库/代码片段可以提供帮助?

python time-series neural-network

24
推荐指数
3
解决办法
2万
查看次数

MongoDB作为时间序列数据库

我正在尝试将mongodb用于时间序列数据库,并且想知道是否有人可以建议如何最好地为该场景设置它.

时间序列数据与股票价格历史非常相似.我收集了来自不同机器的各种传感器的数据集.有十亿个时间戳的值,我想问下面的问题(最好是从数据库而不是应用程序级别):

  1. 对于给定的一组传感器和时间间隔,我希望按时间顺序排列在该间隔内的所有时间戳和传感器值.假设所有传感器共享相同的时间戳(它们都是同时采样的).

  2. 对于给定的一组传感器和时间间隔,我希望按时间顺序排列在给定间隔内的每个第k项(时间戳和相应的传感器值).

有关如何最好地设置并实现查询的任何建议?

谢谢你的建议.

time-series mongodb

24
推荐指数
2
解决办法
2万
查看次数

熊猫比较下一行

我有这样的数据帧

d={}
d['z']=['Q8','Q8','Q7','Q9','Q9']
d['t']=['10:30','10:31','10:38','10:40','10:41']
d['qty']=[20,20,9,12,12]
Run Code Online (Sandbox Code Playgroud)

我想比较第一行和第二行

  1. 与下一行AND相同
  2. 在下一行AND中更大
  3. 是z值与下一行相同

期望值是

   qty                   t   z  valid
0   20 2015-06-05 10:30:00  Q8  False
1   20 2015-06-05 10:31:00  Q8   True
2    9 2015-06-05 10:38:00  Q7  False
3   12 2015-06-05 10:40:00  Q9  False
4   12 2015-06-05 10:41:00  Q9   True
Run Code Online (Sandbox Code Playgroud)

python time-series dataframe pandas

24
推荐指数
1
解决办法
2万
查看次数

是否可以使用 FB Prophet 进行多变量多步预测?

我正在研究一个多变量(100 多个变量)多步(t1 到 t30)预测问题,其中时间序列频率为每 1 分钟一次。该问题需要预测 100 多个变量之一作为目标。我很想知道是否可以使用 FB Prophet 的 Python API 来做到这一点。我能够仅使用目标变量和日期时间变量以单变量方式完成此操作。任何帮助和指导表示赞赏。请让我知道这个问题是否需要进一步的输入或澄清。

python machine-learning time-series forecasting facebook-prophet

24
推荐指数
2
解决办法
2万
查看次数

熊猫的日期范围

在与NumPy和dateutil斗争了几天后,我最近发现了令人惊叹的Pandas库.我一直在仔细阅读文档和源代码,但我无法弄清楚如何date_range()在正确的断点处生成索引.

from datetime import date
import pandas as pd

start = date('2012-01-15')
end = date('2012-09-20')
# 'M' is month-end, instead I need same-day-of-month
date_range(start, end, freq='M')
Run Code Online (Sandbox Code Playgroud)

我想要的是:

2012-01-15
2012-02-15
2012-03-15
...
2012-09-15
Run Code Online (Sandbox Code Playgroud)

我得到了什么:

2012-01-31
2012-02-29
2012-03-31
...
2012-08-31
Run Code Online (Sandbox Code Playgroud)

我需要一个月大小的块来计算一个月中可变的天数.这可以使用dateutil.rrule:

rrule(freq=MONTHLY, dtstart=start, bymonthday=(start.day, -1), bysetpos=1)
Run Code Online (Sandbox Code Playgroud)

丑陋和难以辨认,但它的工作原理.我怎么能和熊猫一起做这个?我打得既date_range()period_range(),到目前为止,没有运气.

我的实际目标是使用groupby,crosstab和/或resample计算的基础上,周期内各个条目的总和/单元/等各个周期值.换句话说,我想从以下数据转换数据:

                total
2012-01-10 00:01    50
2012-01-15 01:01    55
2012-03-11 00:01    60
2012-04-28 00:01    80

#Hypothetical usage
dataframe.resample('total', how='sum', freq='M', start='2012-01-09', end='2012-04-15') 
Run Code Online (Sandbox Code Playgroud)

                total …
Run Code Online (Sandbox Code Playgroud)

python datetime time-series pandas

23
推荐指数
3
解决办法
3万
查看次数

时间序列预测,处理已知的大订单

我有很多已知异常值的数据集(大订单)

data <- matrix(c("08Q1","08Q2","08Q3","08Q4","09Q1","09Q2","09Q3","09Q4","10Q1","10Q2","10Q3","10Q4","11Q1","11Q2","11Q3","11Q4","12Q1","12Q2","12Q3","12Q4","13Q1","13Q2","13Q3","13Q4","14Q1","14Q2","14Q3","14Q4","15Q1", 155782698, 159463653.4, 172741125.6, 204547180, 126049319.8, 138648461.5, 135678842.1, 242568446.1, 177019289.3, 200397120.6, 182516217.1, 306143365.6, 222890269.2, 239062450.2, 229124263.2, 370575384.7, 257757410.5, 256125841.6, 231879306.6, 419580274, 268211059, 276378232.1, 261739468.7, 429127062.8, 254776725.6, 329429882.8, 264012891.6, 496745973.9, 284484362.55),ncol=2,byrow=FALSE)
Run Code Online (Sandbox Code Playgroud)

这个特定系列的前11个异常值是:

outliers <- matrix(c("14Q4","14Q2","12Q1","13Q1","14Q2","11Q1","11Q4","14Q2","13Q4","14Q4","13Q1",20193525.68, 18319234.7, 12896323.62, 12718744.01, 12353002.09, 11936190.13, 11356476.28, 11351192.31, 10101527.85, 9723641.25, 9643214.018),ncol=2,byrow=FALSE)
Run Code Online (Sandbox Code Playgroud)

有哪些方法可以预测考虑这些异常值的时间序列?

我已经尝试更换下一个最大的异常值(因此,运行数据集10次,用下一个最大值替换异常值,直到第10个数据集替换掉所有异常值).我也试过简单地删除异常值(因此每次再次运行数据集10次删除异常值,直到在第10个数据集中删除所有10个异常值)

我只想指出,删除这些大订单并不会完全删除数据点,因为该季度还会发生其他交易

我的代码通过多个预测模型测试数据(ARIMA加权样本,ARIMA加权样本,ARIMA加权,ARIMA,加性Holt-winters加权和Multiplcative Holt-winters加权)所以它需要是可以的适应这些多种模式.

以下是我使用的几个数据集,但我没有这些系列的异常值

data <- matrix(c("08Q1","08Q2","08Q3","08Q4","09Q1","09Q2","09Q3","09Q4","10Q1","10Q2","10Q3","10Q4","11Q1","11Q2","11Q3","11Q4","12Q1","12Q2","12Q3","12Q4","13Q1","13Q2","13Q3","13Q4","14Q1","14Q2","14Q3", 26393.99306, 13820.5037, 23115.82432,    25894.41036,    14926.12574,    15855.8857, 21565.19002,    49373.89675,    27629.10141,    43248.9778, 34231.73851,    83379.26027,    54883.33752,    62863.47728,    47215.92508,    107819.9903,    53239.10602,    71853.5,    59912.7624, 168416.2995,    64565.6211, 94698.38748,    80229.9716, 169205.0023, …
Run Code Online (Sandbox Code Playgroud)

r time-series outliers forecasting

22
推荐指数
1
解决办法
1322
查看次数

如何正确地将时间添加到pandas.tseries.index.DatetimeIndex?

我有一个正常的df.index,我想补充几个小时.

In [1]: test[1].index
Out[2]: 
<class 'pandas.tseries.index.DatetimeIndex'>
[2010-03-11, ..., 2014-08-14]
Length: 52, Freq: None, Timezone: None
Run Code Online (Sandbox Code Playgroud)

这是第一个元素的样子:

In [1]: test[1].index[0]
Out[2]: Timestamp('2010-03-11 00:00:00')
Run Code Online (Sandbox Code Playgroud)

所以我试着添加小时:

In [1]: test[1].index[0] + pd.tseries.timedeltas.to_timedelta(16, unit='h')
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个:

Out[2]: Timestamp('2010-03-11 00:00:00.000000016')
Run Code Online (Sandbox Code Playgroud)

但我想得到这个:

Out[2]: Timestamp('2010-03-11 16:00:00')
Run Code Online (Sandbox Code Playgroud)

我错过了什么?环境是Anaconda(最新)Python 2.7.7,iPython 2.2

非常感谢

python indexing time-series dataframe pandas

21
推荐指数
1
解决办法
2万
查看次数

使用pandas按日期计算值的频率

假设我有以下时间序列:

Timestamp              Category
2014-10-16 15:05:17    Facebook
2014-10-16 14:56:37    Vimeo
2014-10-16 14:25:16    Facebook
2014-10-16 14:15:32    Facebook
2014-10-16 13:41:01    Facebook
2014-10-16 12:50:30    Orkut
2014-10-16 12:28:54    Facebook
2014-10-16 12:26:56    Facebook
2014-10-16 12:25:12    Facebook
...
2014-10-08 15:52:49    Youtube
2014-10-08 15:04:50    Youtube
2014-10-08 15:03:48    Vimeo
2014-10-08 15:02:27    Youtube
2014-10-08 15:01:56    DailyMotion
2014-10-08 13:27:28    Facebook
2014-10-08 13:01:08    Vimeo
2014-10-08 12:52:06    Facebook
2014-10-08 12:43:27    Facebook
Name: summary, Length: 600
Run Code Online (Sandbox Code Playgroud)

我想计算每周和每年的每个类别(时间序列中的唯一值/因子).

Example:

    Week/Year      Category      Count
    1/2014         Facebook      12
    1/2014         Google        5
    1/2014         Youtube       2
...    
    2/2014         Facebook      2 …
Run Code Online (Sandbox Code Playgroud)

datetime time-series count dataframe pandas

21
推荐指数
3
解决办法
2万
查看次数

如何训练具有LSTM细胞的RNN用于时间序列预测

我目前正在尝试构建一个用于预测时间序列的简单模型.目标是使用序列训练模型,以便模型能够预测未来值.

我正在使用tensorflow和lstm单元格来执行此操作.该模型通过时间截断反向传播进行训练.我的问题是如何构建培训数据.

例如,假设我们想要学习给定的序列:

[1,2,3,4,5,6,7,8,9,10,11,...]
Run Code Online (Sandbox Code Playgroud)

我们将网络展开num_steps=4.

选项1

input data               label     
1,2,3,4                  2,3,4,5
5,6,7,8                  6,7,8,9
9,10,11,12               10,11,12,13
...
Run Code Online (Sandbox Code Playgroud)

选项2

input data               label     
1,2,3,4                  2,3,4,5
2,3,4,5                  3,4,5,6
3,4,5,6                  4,5,6,7
...
Run Code Online (Sandbox Code Playgroud)

选项3

input data               label     
1,2,3,4                  5
2,3,4,5                  6
3,4,5,6                  7
...
Run Code Online (Sandbox Code Playgroud)

选项4

input data               label     
1,2,3,4                  5
5,6,7,8                  9
9,10,11,12               13
...
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

time-series prediction lstm tensorflow

21
推荐指数
2
解决办法
1万
查看次数