如何找到时间序列中最先出现的极端类型
how to find which type of extreme comes first in time series
我想在 python 语言的随机时间序列中找出哪种类型的极端值最先出现。比如第一个极端是最大值还是最小值?
对于第一步,我编写了这段代码:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
np.random.seed(0)
ds = np.random.randn(50)
rd = [0]
for i in ds:
rd.append(rd[-1]*0.3 + i)
df = pd.DataFrame(rd, columns=['data'])
如果您指的是全局最小值和最大值,请尝试比较这些值:
df.data.values.argmin(), df.data.values.argmax()
如果您指的是第一个局部最小值和最大值,您可以比较第一个值和第二个值:
- 如果第二个值小于第一个,则第一个局部极值是最小值
- 如果第二个值大于第一个,则第一个局部极值是最大值
- 否则(等于)测试下一个值
我想在 python 语言的随机时间序列中找出哪种类型的极端值最先出现。比如第一个极端是最大值还是最小值? 对于第一步,我编写了这段代码:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
np.random.seed(0)
ds = np.random.randn(50)
rd = [0]
for i in ds:
rd.append(rd[-1]*0.3 + i)
df = pd.DataFrame(rd, columns=['data'])
如果您指的是全局最小值和最大值,请尝试比较这些值:
df.data.values.argmin(), df.data.values.argmax()
如果您指的是第一个局部最小值和最大值,您可以比较第一个值和第二个值:
- 如果第二个值小于第一个,则第一个局部极值是最小值
- 如果第二个值大于第一个,则第一个局部极值是最大值
- 否则(等于)测试下一个值