我对随机过程第一次超过阈值感兴趣。我将观察该过程的结果存储在一个数据帧中,并绘制了该过程在14轮结束后观察到0.9的多个实现的次数。
此图片是使用此代码创建的
import matplotlib.pyplot as plt
plt.style.use('ggplot')
fin = pd.DataFrame(data=np.random.uniform(size=(100, 13))).T
pos = (fin>0.9).astype(float)
ax=fin.loc[:, pos.loc[12, :] != 1.0].plot(figsize=(12, 6), color='silver', legend=False)
fin.loc[:, pos.loc[12, :] == 1.0].plot(figsize=(12, 6), color='indianred', legend=False, ax=ax)
其中fin
包含随机数,而每次经过pos
时,1
就是0.9
。
我现在想绘制每个实现的fin
中的过程越过0.9
时的 first 图(列代表实现,行代表观察时间)
我可以在0.9
中找到idxmax()
之上的值的第一次出现,但是我很困惑如何删除每一列之后的数据框中的所有内容。
import numpy as np
import pandas as pd
df = pd.DataFrame(data=np.random.uniform(size=(100, 10)))
maxes = df.idxmax()
这只是我在思考这个问题时遇到的真正困难。