【问题标题】:Multiple ECDF values in RR中的多个ECDF值
【发布时间】:2018-02-13 00:14:29
【问题描述】:

我在 R 中创建了一个向量数组,并且应该找到它们的每一个 F-hat 值。有没有一行代码可以做到这一点?见下面我的。

V G

现在,我希望从 G 中的每个随机样本中提取一个特定值。感谢任何和所有帮助。

【问题讨论】:

标签: r statistics


【解决方案1】:

R ecdf 函数接受一个数据向量并返回一个函数,该函数将为该数据向量提供 ecdf 值。要获取数据向量范围内给定值的 ecdf 的实际累积概率值,您将运行 ecdf 返回的函数。例如:

set.seed(2)
G <- as.data.frame(replicate(100, rbinom(40, 7, .1)))

G第一列的ecdf:

G1 = ecdf(G[ , 1])

现在我们可以使用这个函数G1 来获取每个可能的数据值的实际经验累积概率(在这种情况下恰好是 0 到 7):

G1(0:7)
[1] 0.500 0.850 0.975 1.000 1.000 1.000 1.000 1.000

如果我们查看G 的第 1 列中的数据,这是有道理的。请注意,50% 的值为零,85% (34/40) 为零或 1:

table(G[,1])
 0  1  2  3 
20 14  5  1

要获取每一列的 ecdf,您可以:

ecdfG = sapply(G, function(x) ecdf(x)(0:7))

这是ecdfG 的前 10 列。请注意,第 1 列包含我们上面计算的 ecdf 值。

ecdfG[ , 1:10]
        V1    V2    V3    V4    V5    V6    V7    V8    V9   V10
[1,] 0.500 0.500 0.575 0.575 0.525 0.450 0.450 0.475 0.525 0.550
[2,] 0.850 0.800 0.825 0.850 0.825 0.775 0.825 0.900 0.850 0.875
[3,] 0.975 0.925 0.950 0.975 0.950 0.950 0.975 0.975 0.975 0.975
[4,] 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.975
[5,] 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
[6,] 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
[7,] 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
[8,] 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-20
    • 2013-05-24
    • 2015-05-31
    • 1970-01-01
    • 2020-05-20
    • 2017-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多