问题标签 [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.
r - 在 quantstrat 中生成不同周期的指标
我想使用与我正在使用的数据不同的时间框架指标。我已经看到这个问题问了几次,但目前还没有解决方案(至少对我来说)。
下面的示例使用每日股票数据,但实际项目使用日内货币数据。我现在可以轻松地导入日内 csv 数据,因此示例和现实世界应该足够互换。
添加 SMA 作为,在这种情况下,每日指标是一种享受
然而试图添加,在这种情况下,每周 SMA
直接调用 Close 列而不Cl(x)
导致相同的错误。我这样做是因为TTR:::runSum
如果给出多于一列的数据会抛出上述错误。
我不完全确定问题出在哪里,所以一些帮助会很棒。
timer - glfwSwapBuffers 的时间模型
此函数设置当前上下文的交换间隔,即在交换窗口缓冲区并从 glfwSwapBuffers 返回之前等待的屏幕更新次数。这有时称为“垂直同步”、“垂直回溯同步”或“垂直同步”。
意思是不是
也就是说,循环的周期与计算任务无关,或者
也就是说,延迟被添加为执行循环的额外时间。
matlab - 求解微分方程直到周期性
我想在 MATLAB 中求解一个微分方程
这里dt
, MyDiff
,tSpan
和X0
在前面的代码中定义。问题是,离散化步骤dt
非常小,而总模拟时间tSpan(end)
非常大。此外,预计解会从某个时间 T 开始变成周期性的,周期为P
。在这里,周期P
是先验的,而时间T
不是。
我想做的是在解决方案X
变为周期性时自动停止 ode113-solver,以节省计算时间。我将不胜感激任何关于我应该如何做到这一点的想法。
直到现在我的想法:
第一个子问题是如何在发现周期性时停止 Matlab 求解器。MATLAB 包含通过事件函数停止 ode113 求解器的选项:
odeopts = odeset('MaxStep',dt,'Events',MyEventFcn);
但是,必须MyEventFcn
是当前时间步长的函数。似乎不可能通过这些信息来确定周期性。在我看来,唯一的方法似乎是使用一个全局参数,该参数包括之前所有时间的值,最多可达预期周期的两倍。但是,这对我来说似乎很不优雅和低效,我希望有更好的方法。t
X
X
P
- 第二个问题是如何确定解
X
是周期性的 periodP
。目前我认为最好的方法是使用自相关函数的阈值xcorr(X)
,但我还不确定细节,所以这里的任何建议也会很有用。
编辑:我实现了一个解决方案,几乎遵循我之前的想法,使用全局变量来跟踪 X 值并使用 xcorr 来检测周期性。想了一会儿,这实际上似乎是最直接的方法。
python - 使用 numpy 的傅立叶变换找到时间序列的最可能周期性?
假设我有一个包含一百个测量值的时间序列 t,每个条目代表每天的测量值。我假设信号中存在一定的周期性——它可能每天、每周或每月重复一次。
将时间序列转换为傅立叶域可能有助于找到这样的周期性?
我如何使用 numpy 的 fft 模块为我的时间序列找到最可能的时期?
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]);
它给出了变换矩阵W
和E
所有对 ( A[τ]
, C
) 的广义特征值的矩阵。
是否有可能检测到正确的周期性分量,不是用最小特征值计算的函数,而是用第二小的特征值计算的函数的局部最小值?
见下图:
绿线显然是所有时滞的最小误差函数,但它没有局部最小值!!!因此,结果只能来自蓝线函数,它是使用第二小的特征值计算的。:/
arrays - 比较峰值的算法:它们是否同相?
我正在开发一种用于比较两个数字列表的算法。这些列表表示使用稳健的峰值检测方法在信号中发现的峰值。我希望想出一些方法来确定峰值是同相、异相还是两者都没有(无法确定)。例如:
这些阵列将被考虑在阶段:
[ 94 185 278 373 469], [ 89 180 277 369 466]
但是这些数组将是异相的:
[51 146 242 349], [99 200 304 401]
不要求数组必须具有相同的长度。我已经研究过测量周期性,但是在这种情况下,我可以假设信号已经是周期性的。
我的另一个想法是将所有数组元素除以它们的索引(或它们的索引+1),以查看它们是否聚集在一个或两个点周围,但这并不可靠,并且如果缺少单个峰值就会失败。
什么方法可能对解决这个问题有用?
python - 如何从其坐标(t,X,Y)计算具有伪圆形运动的物体的旋转次数
所以我有一个具有伪环形运动的对象(编辑:具有非恒定周期)。我用 30 fps 的相机拍摄它,每 3 帧提取一次它的位置 X 和 Y。而且,这个圆周运动的中心是移动的。
参赛资料:
- 框架,列表
- X 和 Y , 2 个列表
对于 Frame[i],对象的位置是 X[i] 和 Y[i]。
此外,我的数据有“间隙”,有时我可以从第 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 的线性组合。
r - R - 使用半年度数据分析时间序列?
我有一个包含半年(半年)数据点的时间序列。
似乎 ts() 函数无法处理,因为“频率 = 2”返回一个非常奇怪的时间序列对象,该对象远远超出实际时间段。
有没有办法在 R 中对这种时间序列对象进行时间序列分析?
编辑:这是一个例子:
我期待:
python - 数据周期性 - 如何规范化?
我有一个包含 12 年天气数据的数据集。在前 10 年,每天记录数据。在过去的两年里,它现在每周记录一次。我想在 Python Pandas 中使用这些数据进行分析,但我对如何对其进行标准化以供使用几乎没有迷失。
我的想法
- 使用平均值将前 10 年的数据也转换为每周数据。可能有效,但翻译过程中丢失了很多数据。
- 每周数据无法转换为每天数据。
- 忽略每日数据——这是一个巨大的损失
- 忽略每周数据 - 我丢失了最近的数据。
对此有什么想法吗?