एक और दृष्टिकोण जो फिशर के विरूपण से कम सटीक हो सकता है, लेकिन मुझे लगता है कि यह अधिक सहज हो सकता है (और सांख्यिकीय महत्व के अलावा व्यावहारिक महत्व के बारे में विचार दे सकता है) दृश्य परीक्षण है:
Buja, A., Cook, D. Hofmann, H., Lawrence, M. Lee, E.-K., Swayne,
D.F and Wickham, H. (2009) Statistical Inference for exploratory
data analysis and model diagnostics Phil. Trans. R. Soc. A 2009
367, 4361-4383 doi: 10.1098/rsta.2009.0120
वहाँ इस के एक कार्यान्वयन है vis.test
में समारोह TeachingDemos
आर एक के लिए पैकेज संभवतः अपने उदाहरण के लिए इसे चलाने के लिए जिस तरह से:
vt.scattercor <- function(x,y,r,...,orig=TRUE)
{
require('MASS')
par(mar=c(2.5,2.5,1,1)+0.1)
if(orig) {
plot(x,y, xlab="", ylab="", ...)
} else {
mu <- c(mean(x), mean(y))
var <- var( cbind(x,y) )
var[ rbind( 1:2, 2:1 ) ] <- r * sqrt(var[1,1]*var[2,2])
tmp <- mvrnorm( length(x), mu, var )
plot( tmp[,1], tmp[,2], xlab="", ylab="", ...)
}
}
test1 <- mvrnorm(100, c(0,0), rbind( c(1,.75), c(.75,1) ) )
test2 <- mvrnorm(100, c(0,0), rbind( c(1,.5), c(.5,1) ) )
vis.test( test1[,1], test1[,2], r=0.75, FUN=vt.scattercor )
vis.test( test2[,1], test2[,2], r=0.75, FUN=vt.scattercor )
बेशक, यदि आपका वास्तविक डेटा सामान्य नहीं है या संबंध रैखिक नहीं है, तो वह आसानी से उपरोक्त कोड के साथ उठाया जाएगा। यदि आप उन लोगों के लिए एक साथ परीक्षण करना चाहते हैं, तो उपरोक्त कोड ऐसा करेगा, या डेटा की प्रकृति का बेहतर प्रतिनिधित्व करने के लिए उपरोक्त कोड को अनुकूलित किया जा सकता है।