问题标签 [periodicity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
968 浏览

r - 在 quantstrat 中生成不同周期的指标

我想使用与我正在使用的数据不同的时间框架指标。我已经看到这个问题问了几次,但目前还没有解决方案(至少对我来说)。

下面的示例使用每日股票数据,但实际项目使用日内货币数据。我现在可以轻松地导入日内 csv 数据,因此示例和现实世界应该足够互换。

添加 SMA 作为,在这种情况下,每日指标是一种享受

然而试图添加,在这种情况下,每周 SMA

直接调用 Close 列而不Cl(x)导致相同的错误。我这样做是因为TTR:::runSum如果给出多于一列的数据会抛出上述错误。

我不完全确定问题出在哪里,所以一些帮助会很棒。

0 投票
1 回答
74 浏览

timer - glfwSwapBuffers 的时间模型

此函数设置当前上下文的交换间隔,即在交换窗口缓冲区并从 glfwSwapBuffers 返回之前等待的屏幕更新次数。这有时称为“垂直同步”、“垂直回溯同步”或“垂直同步”。

意思是不是

也就是说,循环的周期与计算任务无关,或者

也就是说,延迟被添加为执行循环的额外时间。

0 投票
0 回答
84 浏览

matlab - 求解微分方程直到周期性

我想在 MATLAB 中求解一个微分方程

这里dt, MyDiff,tSpanX0在前面的代码中定义。问题是,离散化步骤dt非常小,而总模拟时间tSpan(end)非常大。此外,预计解会从某个时间 T 开始变成周期性的,周期为P。在这里,周期P是先验的,而时间T不是。

我想做的是在解决方案X变为周期性时自动停止 ode113-solver,以节省计算时间。我将不胜感激任何关于我应该如何做到这一点的想法。

直到现在我的想法:

  1. 第一个子问题是如何在发现周期性时停止 Matlab 求解器。MATLAB 包含通过事件函数停止 ode113 求解器的选项:

    odeopts = odeset('MaxStep',dt,'Events',MyEventFcn);

但是,必须MyEventFcn是当前时间步长的函数。似乎不可能通过这些信息来确定周期性。在我看来,唯一的方法似乎是使用一个全局参数,该参数包括之前所有时间的值,最多可达预期周期的两倍。但是,这对我来说似乎很不优雅和低效,我希望有更好的方法。tXXP

  1. 第二个问题是如何确定解X是周期性的 period P。目前我认为最好的方法是使用自相关函数的阈值xcorr(X),但我还不确定细节,所以这里的任何建议也会很有用。

编辑:我实现了一个解决方案,几乎遵循我之前的想法,使用全局变量来跟踪 X 值并使用 xcorr 来检测周期性。想了一会儿,这实际上似乎是最直接的方法。

0 投票
0 回答
172 浏览

python - 在矩阵序列中找到周期性

下面是包含许多列的 csv 文件的快照(实际文件非常大)。每列对应一个“系统状态”的时间戳值。我打算找到的是这些列出现的周期,即系统状态会重复自身以及以什么周期重复。我一直在 python 中寻找 fft2 ,但现在还不了解句号提取。请帮忙,因为我不是傅立叶变换的新手,也没有以前的知识。

一个矩阵在一列中表示。前两列用于矩阵单元识别。大多数值是零,但不是全部。

在此处输入图像描述

我的程序的算法步骤

0 投票
3 回答
9381 浏览

python - 使用 numpy 的傅立叶变换找到时间序列的最可能周期性?

假设我有一个包含一百个测量值的时间序列 t,每个条目代表每天的测量值。我假设信号中存在一定的周期性——它可能每天、每周或每月重复一次。

将时间序列转换为傅立叶域可能有助于找到这样的周期性?

我如何使用 numpy 的 fft 模块为我的时间序列找到最可能的时期?

0 投票
0 回答
61 浏览

matlab - 我可以使用周期性误差的第二小的特征值来提取周期性分量吗?

我想使用周期性分量分析检测 EEG 通道中的周期性分量。我简要描述了该过程,因为该算法不是很知名。

最小化周期性误差函数error(τ)= E[s(t+τ) -s(t)] / E[s(t)^2]τ时滞在哪里。如果我定义矩阵A(τ), C, error(τ)=(w'*A(τ)*w)/(w'*C*w) = Rayleigh(A(τ), C, w). 因此,它的最小值是 ( Α(τ), C) 的最小广义特征值,在一定的时滞 τ 内。

我运行piCA了一系列时间滞后,通常我在最小化误差函数的局部最小值处检测周期性分量的周期(使用最小的广义特征值)。 [E,W]=piCA( Xeeg, [minlag maxlag], 'pre', [1 1 1]); 它给出了变换矩阵WE所有对 ( A[τ], C) 的广义特征值的矩阵。

是否有可能检测到正确的周期性分量,不是用最小特征值计算的函数,而是用第二小的特征值计算的函数的局部最小值?

见下图:

周期性误差

绿线显然是所有时滞的最小误差函数,但它没有局部最小值!!!因此,结果只能来自蓝线函数,它是使用第二小的特征值计算的。:/

0 投票
2 回答
39 浏览

arrays - 比较峰值的算法:它们是否同相?

我正在开发一种用于比较两个数字列表的算法。这些列表表示使用稳健的峰值检测方法在信号中发现的峰值。我希望想出一些方法来确定峰值是同相、异相还是两者都没有(无法确定)。例如:

这些阵列将被考虑在阶段:

[ 94 185 278 373 469], [ 89 180 277 369 466]

但是这些数组将是异相的:

[51 146 242 349], [99 200 304 401]

不要求数组必须具有相同的长度。我已经研究过测量周期性,但是在这种情况下,我可以假设信号已经是周期性的。

我的另一个想法是将所有数组元素除以它们的索引(或它们的索引+1),以查看它们是否聚集在一个或两个点周围,但这并不可靠,并且如果缺少单个峰值就会失败。

什么方法可能对解决这个问题有用?

0 投票
0 回答
157 浏览

python - 如何从其坐标(t,X,Y)计算具有伪圆形运动的物体的旋转次数

所以我有一个具有伪环形运动的对象(编辑:具有非恒定周期)。我用 30 fps 的相机拍摄它,每 3 帧提取一次它的位置 X 和 Y。而且,这个圆周运动的中心是移动的。

参赛资料:

  • 框架,列表
  • X 和 Y , 2 个列表

对于 Frame[i],对象的位置是 X[i] 和 Y[i]。

如果你想看看它的样子(3000 万视频): Y 在 X 的函数中的绘图;X 在 Frame 的函数中和 Y 在 Frame 的函数中的绘图。

此外,我的数据有“间隙”,有时我可以从第 600 帧到第 690 帧,因为在我的视频中没有正确检测到对象。数据已经用一阶低通滤波器过滤(在按段插值之后)。

我的问题是,我找不到一个好的算法来计算旋转次数,而没有太多的可变性。

当前算法使用 X 和 Y 的伪周期性:

在 Python 中:

该当前解决方案具有很高的可变性,具体取决于:

  • 长度
  • “计数高于值”:如果我取平均值(X)或平均值(X)+ 10,我会得到完全不同的结果。

你知道如何减少这种可变性吗?或者关于计算旋转的算法的想法?或者在计数之前结合 X 和 Y 的方法?

由于 (t = 0, X = 1, Y = 0) 的旋转可以用 X = cos(t) 和 Y = sin(t) 来描述,我认为有一种方法可以将 X 和 Y 相加或相乘为了分析 X 和 Y 的线性组合。

0 投票
1 回答
823 浏览

r - R - 使用半年度数据分析时间序列?

我有一个包含半年(半年)数据点的时间序列。

似乎 ts() 函数无法处理,因为“频率 = 2”返回一个非常奇怪的时间序列对象,该对象远远超出实际时间段。

有没有办法在 R 中对这种时间序列对象进行时间序列分析?

编辑:这是一个例子:

我期待:

0 投票
1 回答
196 浏览

python - 数据周期性 - 如何规范化?

我有一个包含 12 年天气数据的数据集。在前 10 年,每天记录数据。在过去的两年里,它现在每周记录一次。我想在 Python Pandas 中使用这些数据进行分析,但我对如何对其进行标准化以供使用几乎没有迷失。

我的想法

  1. 使用平均值将前 10 年的数据也转换为每周数据。可能有效,但翻译过程中丢失了很多数据。
  2. 每周数据无法转换为每天数据。
  3. 忽略每日数据——这是一个巨大的损失
  4. 忽略每周数据 - 我丢失了最近的数据。

对此有什么想法吗?