0

我想生成 320 个数字(X1,X2.... X320),范围从 0-1 跨越 320 天:

日期 | 值
2020-03-18 X1
2020-03-19 X2

...
2021-01-31 X320

因此,当我针对“日期”绘制“值”时,这些数字随着时间的推移遵循指数衰减模式。

在 Python 中正确有效的方法是什么?一直在努力解决这个问题。
简单的部分是生成 320 个数字,它们一起符合指数衰减模式,但现在我希望这 320 个数字随着时间的推移具有这种模式 - 这是困难的部分。

非常感谢你的帮助!

4

2 回答 2

2

使用 numpy 和指数衰减方程。请参阅代码。

def exponential_decay(a, b, N):
    # a, b: exponential decay parameter
    # N: number of samples 
    return a * (1-b) ** np.arange(N)

print(exponential_decay(1, 0.5, 320))
于 2020-04-22T01:56:43.497 回答
1

据我了解,您需要沿指数衰减曲线的 320 个样本。这很简单:

import numpy as np

lamb = 0.01
xs = np.linspace(1,320,320)
ys = np.exp(-lamb * xs)

您可以选择衰减参数 lambda,但它是合适的。

于 2020-04-22T02:35:45.070 回答