我正在尝试在R中重现以上函数。分子在时间“ t”具有“ y”的概率密度函数(pdf)的乘积。 omega_t只是权重(现在让我们忽略)。 i
代表在时间model_i
上为t
导出的y的每个预测(以及密度)。
分母是上述乘积的整数。我的问题是:如何估算密度。为了获得变量的密度,需要一些数据点。到目前为止,我有这个:
y<-c(-0.00604,-0.00180,0.00292,-0.0148)
forecastsy_model1<-c(-0.0183,0.00685) # respectively time t=1 and t=2 of the forecasts
forecastsy_model2<-c(-0.0163,0.00931) # similarly
all.y.1<-c(y,forecasty_model1) #together in one vector
all.y.2<-c(y,forecasty_model2) #same
但是,我不知道如何提取x1
或t=1
时间的t=6
的密度,以生产产品。我已经考虑过使用此方法估算出的密度:
dy1<-density(all.y.1)
which(dy1$x==0.00685)
integer(0) #length(dy1$x) : 512
根据文档,其中dy1$x
包含估计密度的点的n
坐标。 n
是否应为6,或者至少包含我提供的y
的点?提取y
的密度(pdf)的正确方法是什么?
答案 0 :(得分:2)
n
中有一个density
参数,默认为512
。 density
在相对密集的网格上返回估计的密度值,以便您可以绘制密度曲线。网格点由数据范围(plus some extension)和n
值确定。它们产生均匀间隔的网格。采样位置可能不完全位于此网格上。
您可以使用线性插值来获取此网格覆盖的任何地方的密度值: