轧制精度

2024-04-19 07:45:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有二进制预测(data['ypred']为1或0)和实际实现(data['y'])的数据帧,我想编写一个函数,计算最后n个值的滚动精度(即所有预测中正确预测的百分比)(数据已经按日期排序)。下面是最后2次观察的示例(注意第一行是NA,最后一行是50%,因为2次中只有1次是正确的):

 dict = [{'ypred': '1','y': '1','rolWinProb': 'NA'},
 {'ypred': '1','y': '1','rolWinProb': '100'},
 {'ypred': '0','y': '1','rolWinProb': '100'},
 {'ypred': '0','y': '1','rolWinProb': '100'},
 {'ypred': '1','y': '0','rolWinProb': '50'}]

 data = pd.DataFrame(dict)

有人能建议一种方法吗

也许是这样的:

data[(data['y'] ==1 ) & (data['ypred']==1)].rolling(10)