计算r中二元变量的相关系数

计算r中二元变量的相关系数,r,binary,correlation,R,Binary,Correlation,我有4个队列(NOPR),它们有成对的测试(A和B)。所有人都进行了A和B测试。有些在两项试验(AB)中均呈阳性,有些仅在一项试验(A或B)中呈阳性。我想回答两个问题: 1.测试A能在多大程度上增加每个队列的潜在阳性率? 2.每个队列A和B的相关频率如何 为了分析测试之间的相关性(AB),我尝试了计算Phi系数的方法。我已经按照@akrun在另一篇帖子中的建议做了,但是没能让它起作用 有没有关于如何计算的建议?因为您的数据组织方式不同,所以它不起作用。每行数据都是一个完整的2x2表格。使用dp

我有4个队列(NOPR),它们有成对的测试(A和B)。所有人都进行了A和B测试。有些在两项试验(AB)中均呈阳性,有些仅在一项试验(A或B)中呈阳性。我想回答两个问题: 1.测试A能在多大程度上增加每个队列的潜在阳性率? 2.每个队列A和B的相关频率如何

为了分析测试之间的相关性(AB),我尝试了计算Phi系数的方法。我已经按照@akrun在另一篇帖子中的建议做了,但是没能让它起作用


有没有关于如何计算的建议?

因为您的数据组织方式不同,所以它不起作用。每行数据都是一个完整的2x2表格。使用
dput
以我们易于读取的格式放置数据。然后我们可以剪切/粘贴它:

combn(df, 2, FUN = function(x) Phi(x[,1], x[,2]))

你说“但是没能让它工作”。你能详细说明一下什么是不起作用的吗?我按照之前的帖子建议@akrun无法让这个命令起作用,尽管下载了多个包,其中包括Phi命令。
combn(df, 2, FUN = function(x) Phi(x[,1], x[,2]))
dta <- structure(list(AB = c(440L, 3L, 23L, 4L), A = c(54L, 6L, 25L, 
5L), B = c(67L, 56L, 3L, 67L), Neg = c(345L, 543L, 765L, 243L
)), class = "data.frame", row.names = c("N", "O", "P", "R"))
dfa
#    AB  A  B Neg
# N 440 54 67 345
# O   3  6 56 543
# P  23 25  3 765
# R   4  5 67 243
N <- matrix(unlist(dfa[1, ]), 2, 2, byrow=TRUE, dimnames=list(A=c("Pos", "Neg"), B=c("Pos", "Neg")))
N
#      B
# A     Pos Neg
#   Pos 440  54
#   Neg  67 345
apply(dfa, 1, function(x) Phi(matrix(x, 2)))
#          N          O          P          R 
# 0.73028594 0.09784794 0.63669678 0.09088293