1. A method for determining a polychoric correlation between a first discrete variable and a second discrete variable, the method comprising: if a first discrete variable is without a first known distribution, approximating a first distribution for the first discrete variable; if a second discrete variable is without a second known distribution, approximating a second distribution for the second discrete variable; transforming a first normally distributed variable to a first transformed variable by simulating values of the first normally distributed variable and discrete mapping from the first normally distributed variable to one of the first known distribution and the approximated first distribution for the first discrete variable based at least in part on the simulated values of the first normally distributed variable; transforming a second normally distributed variable to a second transformed variable by simulating values of the second normally distributed variable and discrete mapping from the second normally distributed variable to one of the second known distribution and the approximated second distribution for the second discrete variable based at least in part on the simulated values of the second normally distributed variable; and determining, by a computing device, a polychoric correlation between the first discrete variable and the second discrete variable by using a stochastic root finding algorithm to operate on the first transformed variable and the second transformed variable.