Hello,

I am trying to do chi2 tests and store the chi2, p, and the frequencies with the following code in a loop. For some of the variables of the loop, there are no observations for one of the options of 'sample' variable. This is creating problem and the 503 conformability error occurs and the program stops. I want the loop to continue with the next variable even in this case. I tried the below code but it doesn't work. Can somebody help please

code:

use "sampling_data_Jan30.dta", clear

keep if STATE_NAME=="ANDHRA PRADESH"

foreach v of varlist $nominal {

ds `v'

di `"`: var label `v''"'

display "ANDHRA PRADESH"

capture noisily tab sample `v' if share_irrigated_area>10 & STATE_NAME=="ANDHRA PRADESH",chi2 row matcell(rowfr_AP)

if _rc==0 {

matrix AP_nominal_chi2= (r(chi2),r(p) )

matrix rownames AP_nominal_chi2= `v'

matrix colnames AP_nominal_chi2 = chisquare pvalue

mat2txt, matrix(AP_nominal_chi2) sav("AP_nominal_chi2.xlx") append

matrix rownames rowfr_AP= `v' sample/nonsample

matrix colnames rowfr_AP= freq1 freq2

by sample, sort : egen `v'_pc=mean(100*`v')

mat2txt, matrix(rowfr_AP) sav("AP_rowfr.xlx") append

}

else continue

}

I am trying to do chi2 tests and store the chi2, p, and the frequencies with the following code in a loop. For some of the variables of the loop, there are no observations for one of the options of 'sample' variable. This is creating problem and the 503 conformability error occurs and the program stops. I want the loop to continue with the next variable even in this case. I tried the below code but it doesn't work. Can somebody help please

code:

use "sampling_data_Jan30.dta", clear

keep if STATE_NAME=="ANDHRA PRADESH"

foreach v of varlist $nominal {

ds `v'

di `"`: var label `v''"'

display "ANDHRA PRADESH"

capture noisily tab sample `v' if share_irrigated_area>10 & STATE_NAME=="ANDHRA PRADESH",chi2 row matcell(rowfr_AP)

if _rc==0 {

matrix AP_nominal_chi2= (r(chi2),r(p) )

matrix rownames AP_nominal_chi2= `v'

matrix colnames AP_nominal_chi2 = chisquare pvalue

mat2txt, matrix(AP_nominal_chi2) sav("AP_nominal_chi2.xlx") append

matrix rownames rowfr_AP= `v' sample/nonsample

matrix colnames rowfr_AP= freq1 freq2

by sample, sort : egen `v'_pc=mean(100*`v')

mat2txt, matrix(rowfr_AP) sav("AP_rowfr.xlx") append

}

else continue

}

## Comment