我有以下数据框:
d = {'Name': ['Jim', 'Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim', 'Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim','Jim'], 'Predict': [2.901826509,3.212149337,2.388237651,3.744206058,1.944415024,2.719441794,2.543629608,3.264809759,3.661189232,2.509445492,4.784738653,3.305165944,4.03919276,2.708492579,3.172120051,
1.774120629,4.40550619,2.426048696,3.767313548,4.108914912,3.198379034,4.078331863,3.652025]}
df = pd.DataFrame(data=d)
df['Mean'] = 4
df['StDev'] = 6
df.head(5)
Name Predict Mean StDev
0 Jim 2.901827 4 6
1 Jim 3.212149 4 6
2 Jim 2.388238 4 6
3 Jim 3.744206 4 6
4 Jim 1.944415 4 6
我希望在每个Predict
值上应用一个模拟(可能是 10,000 个)以获得预测小于或等于 0 的概率。我想将其添加为同一数据框中的一列。
我使用以下公式对 excel 中的版本进行了基本工作:
=NORM.INV(RAND(),"Predict","StDev")
但我正在寻找一种通过 python 来扩展它的方法。
有人可以帮忙吗?谢谢!