如何从deriv()生成的对象中提取值?

时间:2019-07-07 07:48:04

标签: r

考虑高斯累积分布函数pnorm()的导数,它是高斯dnorm()的概率密度。 它是通过以下步骤完成的:

#  Calculate derivative function and store to object a
   a <- deriv((y ~  pnorm(x,0,1)   ), c("x"), func = TRUE)

# Check the value of  at 4
    > a(4)
    [1] 0.9999683
    attr(,"gradient")
                    x
    [1,] 0.0001338302
    > dnorm(4)
    [1] 0.0001338302

我想从对象0.0001338302中提取值a(4)

“提取”一词的含义如下,但由于提取第一个值0.9999683,因此不希望使用。

a(4)[1]

1 个答案:

答案 0 :(得分:1)

您可以提取属性"gradient"

attr(a(4), "gradient")[1]
#[1] 0.0001338302
"gradient"

a(4)属性返回一个矩阵,我们从中提取第一个元素。