【问题标题】:How to compare two Probability Density Functions?如何比较两个概率密度函数?
【发布时间】:2018-06-12 14:11:47
【问题描述】:

我有两个概率密度函数,我想知道它们的分布是否相似。我知道 R 中的 KS 测试可以做到这一点,但是当我运行代码时,会发生错误。感谢您的帮助。

set.seed(100)
a=density(sample(x=1:30,size = 30,replace = T))
b=density(sample(x=1:40,size = 35,replace = T))
plot(a)
lines(b)

ks.test(a,b)
Error in ks.test(a, b) : 
 'y' must be numeric or a function or a string naming a valid function

【问题讨论】:

  • 您需要提供ks.test 数据点,而不是密度估计值。
  • ks.test 旨在对原始数据进行操作。不是从原始数据生成的反对密度。如果您省略 density() 调用,它会起作用。

标签: r hypothesis-test


【解决方案1】:

您需要输入两个样本(数据值的数字向量)作为ks.test 的参数。

set.seed(100)
x <- sample(x=1:30,size = 30,replace = T)
y <- sample(x=1:40,size = 35,replace = T)
a=density(x)
b=density(y)
plot(a)
lines(b)

ks.test(x,y)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-21
    • 1970-01-01
    • 1970-01-01
    • 2016-06-07
    • 2018-12-11
    • 1970-01-01
    • 2017-09-20
    • 2011-08-11
    相关资源
    最近更新 更多