【问题标题】:Vectorizing prop.test over dataframe in R在 R 中对数据帧进行矢量化 prop.test
【发布时间】:2018-01-31 09:25:47
【问题描述】:

这是一个基本问题,我收到以下错误。

prop.test 中的错误:'x' 和 'n' 必须具有相同的长度

使用此代码

cv_MH$pval <- (prop.test(x = c(cv_MH$search, cv_MH$against), n = c(size, size2)))$p.value

其中sizesize2 是较大的常数 (>200,000)。

这就是cv_MH 的样子

search    against
45        23
384       274
657       883

基本上,我试图在 cv_MH 中创建另一个变量来计算 p 值。

谢谢。

【问题讨论】:

    标签: r dataframe statistics vectorization statistical-test


    【解决方案1】:

    我认为您需要为 x 中的每个值重复计数 (n)。 这个呢?

    cv_MH$pval <- prop.test(x = c(cv_MH$search, cv_MH$against), 
                            n = c(rep(size, length(cv_MH$search)),
                                  rep(size2, length(cv_MH$against))))$p.value
    

    x 表示成功的次数(感兴趣的事件),n 表示事件的总数... x 应该具有相同的 n 长度,正如您的错误消息所建议的那样

    【讨论】:

    • 是的,成功了!为什么重复计数确实有效?
    • 简单来说,prop.function 比较成功率,所以需要提供相同数量的分子和分母...
    • 我以为我有 2 个分子和 2 个分母...(分子是 cv_MH$searchcv_MH$against,分母是 sizesize2)?
    猜你喜欢
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多