Hello!
I have a set of 4 variables and a set of 4 conditions. I would like to run non-parametric tests (ranksum) over pairs of the two conditions for each variable. After some huffig and puffing I managed to create a loop to run pairwise tests for each variable individually:
local treatment "T1 T2 T3 T4"
local var "V1 V2 V3 V4"
forvalues i=1/4 {
forvalues j=`=`i'+1'/4 {
local this_treatment `: word `i' of `treatment''
local other_treatment `: word `j' of `treatment''
di "`this_treatment'" " `other_treatment'"
ranksum V1 if `this_treatment'==1 | `other_treatment'==1 ,by(`this_treatment')
}
}
Now, if I try to plug in the loop over the 4 vars, as in the following code, I get the answer that there are too many variables for the test. Any solution? Thanks in advance!
forvalues i=1/4 {
forvalues j=`=`i'+1'/4 {
foreach x in `var' {
local this_treatment `: word `i' of `treatment''
local other_treatment `: word `j' of `treatment''
di "`x'" " `this_treatment' " " `other_treatment' "
ranksum `x' if `this_treatment'==1 | `other_treatment'==1 ,by(`this_treatment')
}
}
}
I have a set of 4 variables and a set of 4 conditions. I would like to run non-parametric tests (ranksum) over pairs of the two conditions for each variable. After some huffig and puffing I managed to create a loop to run pairwise tests for each variable individually:
local treatment "T1 T2 T3 T4"
local var "V1 V2 V3 V4"
forvalues i=1/4 {
forvalues j=`=`i'+1'/4 {
local this_treatment `: word `i' of `treatment''
local other_treatment `: word `j' of `treatment''
di "`this_treatment'" " `other_treatment'"
ranksum V1 if `this_treatment'==1 | `other_treatment'==1 ,by(`this_treatment')
}
}
Now, if I try to plug in the loop over the 4 vars, as in the following code, I get the answer that there are too many variables for the test. Any solution? Thanks in advance!
forvalues i=1/4 {
forvalues j=`=`i'+1'/4 {
foreach x in `var' {
local this_treatment `: word `i' of `treatment''
local other_treatment `: word `j' of `treatment''
di "`x'" " `this_treatment' " " `other_treatment' "
ranksum `x' if `this_treatment'==1 | `other_treatment'==1 ,by(`this_treatment')
}
}
}
Comment