Yule {psych} | R Documentation |

One of the many measures of association is the Yule coefficient. Given a two x two table of counts

a | b | R1 | |

c | d | R2 | |

C1 | C2 | n | |

Yule Q is (ad - bc)/(ad+bc).

Conceptually, this is the number of pairs in agreement (ad) - the number in disagreement (bc) over the total number of paired observations. Warren (2008) has shown that Yule's Q is one of the “coefficients that have zero value under statistical independence, maximum value unity, and minimum value minus unity independent of the marginal distributions" (p 787).

ad/bc is the odds ratio and Q = (OR-1)/(OR+1)

Yule's coefficient of colligation is Y = (sqrt(OR) - 1)/(sqrt(OR)+1)
Yule.inv finds the cell entries for a particular Q and the marginals (a+b,c+d,a+c, b+d). This is useful for converting old tables of correlations into more conventional `phi`

or tetrachoric correlations `tetrachoric`

Yule2phi and Yule2tetra convert the Yule Q with set marginals to the correponding phi or tetrachoric correlation.

Bonett and Price show that the Q and Y coefficients are both part of a general family of coefficients raising the OR to a power (c). If c=1, then this is Yule's Q. If .5, then Yule's Y, if c = .75, then this is Digby's H. They propose that c = .5 - (.5 * min(cell probabilty)^2 is a more general coefficient. YuleBonett implements this for the 2 x 2 case, YuleCor for the data matrix case.

YuleBonett(x,c=1,bonett=FALSE,alpha=.05) #find the generalized Yule cofficients YuleCor(x,c=1,bonett=FALSE,alpha=.05) #do this for a matrix Yule(x,Y=FALSE) #find Yule given a two by two table of frequencies #find the frequencies that produce a Yule Q given the Q and marginals Yule.inv(Q,m,n=NULL) #find the phi coefficient that matches the Yule Q given the marginals Yule2phi(Q,m,n=NULL) Yule2tetra(Q,m,n=NULL,correct=TRUE) #Find the tetrachoric correlation given the Yule Q and the marginals #(deprecated) Find the tetrachoric correlation given the Yule Q and the marginals Yule2poly(Q,m,n=NULL,correct=TRUE)

`x` |
A vector of four elements or a two by two matrix, or, in the case of YuleBonett or YuleCor, this can also be a data matrix |

`c` |
1 returns Yule Q, .5, Yule's Y, .75 Digby's H |

`bonett` |
If FALSE, then find Q, Y, or H, if TRUE, then find the generalized Bonett cofficient |

`alpha` |
The two tailed probability for confidence intervals |

`Y` |
Y=TRUE return Yule's Y coefficient of colligation |

`Q` |
Either a single Yule coefficient or a matrix of Yule coefficients |

`m` |
The vector c(R1,C2) or a two x two matrix of marginals or a four element vector of marginals. The preferred form is c(R1,C1) |

`n` |
The number of subjects (if the marginals are given as frequencies |

`correct` |
When finding a tetrachoric correlation, should small cell sizes be corrected for continuity. See |

Yule developed two measures of association for two by two tables. Both are functions of the odds ratio

`Q` |
The Yule Q coefficient |

`R` |
A two by two matrix of counts |

`result` |
If given matrix input, then a matrix of phis or tetrachorics |

`rho` |
From YuleBonett and YuleCor |

`ci` |
The upper and lower confidence intervals in matrix form (From YuleBonett and YuleCor). |

Yule.inv is currently done by using the optimize function, but presumably could be redone by solving a quadratic equation.

William Revelle

Yule, G. Uday (1912) On the methods of measuring association between two attributes. Journal of the Royal Statistical Society, LXXV, 579-652

Bonett, D.G. and Price, R.M, (2007) Statistical Inference for Generalized Yule Coefficients in 2 x 2 Contingency Tables. Sociological Methods and Research, 35, 429-446.

Warrens, Matthijs (2008), On Association Coefficients for 2x2 Tables and Properties That Do Not Depend on the Marginal Distributions. Psychometrika, 73, 777-789.

See Also as `phi`

, `tetrachoric`

, `Yule2poly.matrix`

, `Yule2phi.matrix`

Nach <- matrix(c(40,10,20,50),ncol=2,byrow=TRUE) Yule(Nach) Yule.inv(.81818,c(50,60),n=120) Yule2phi(.81818,c(50,60),n=120) Yule2tetra(.81818,c(50,60),n=120) phi(Nach) #much less #or express as percents and do not specify n Nach <- matrix(c(40,10,20,50),ncol=2,byrow=TRUE) Nach/120 Yule(Nach) Yule.inv(.81818,c(.41667,.5)) Yule2phi(.81818,c(.41667,.5)) Yule2tetra(.81818,c(.41667,.5)) phi(Nach) #much less YuleCor(ability[,1:4],,TRUE) YuleBonett(Nach,1) #Yule Q YuleBonett(Nach,.5) #Yule Y YuleBonett(Nach,.75) #Digby H YuleBonett(Nach,,TRUE) #Yule* is a generalized Yule

[Package *psych* version 1.7.8 ]