We have two different data-frames d1 & d2 of sizes N observations of X variables and N observations of Y variables respectively.
For finding Wilcoxon-Matt-Whitney test between every columns of these two different data frames d1 & d2:
1. Reading data :
d1 <- data.frame(read.table("data1", header = TRUE, stringsAsFactors = FALSE, sep = ""))
d2 <- data.frame(read.table("data2", header = TRUE, stringsAsFactors = FALSE, sep = ""))
Assume number of columns in d1 is greater than number of columns in d2
length(colnames(d1)) >= length(colnames(d2))
2. Declaring a Matrix to store p-values
pvalue <- matrix(nrow = length(colnames(d2)), ncol = (length(colnames(d1)))
3. Now for Wilcoxon-Matt-Whitney test for each column of d2$1 with d1$1, d1$2, d1$3, ... and so on
for(i in 1:length(colnames(d2))){
for(j in 1:length(colnames(d1))){
pvalue[i,j]<-wilcox.test(d2[,i], d1[,j], paired=TRUE)$p.value
colnames(pvalue) <- colnames(d1)
rownames(pvalue) <- colnames(d2)} }
Note : This method will also works fine if we want to perform Wilcoxon-Matt-Whitney test on single data-frame to find relation between one column with another columns of same data-frame.
d3 <- data.frame(read.table("data3", header = TRUE, stringsAsFactors = FALSE, sep = ""))
pvalue <- matrix(nrow = length(colnames(d3)), ncol = (length(colnames(d3)))
Now for Wilcoxon-Matt-Whitney test for each column of d3$1 with d3$1, d3$2, d3$3, ... and so on
for(i in 1:length(colnames(d3))){
for(j in 1:length(colnames(d3))){
pvalue[i,j]<-wilcox.test(d3[,i], d3[,j], paired=TRUE)$p.value
colnames(pvalue) <- colnames(d3)
rownames(pvalue) <- colnames(d3)} }