Normal practice is to treat likert scales as continuous variable even though they are not. As long as there are >=5 options, the bias from discreteness is not large.
I simulated the situation for you. I generated two variables with continuous random data from two normal distributions with a correlation of .50, N=1000. Then I created likert scales of varying levels from the second variable. Then I correlated all these variables with each other.
Correlations of continuous variable 1 with:
So you see, introducing discreteness biases correlations towards zero, but not by much as long as likert is >=5 level. You can correct for the bias by multiplying by the correction factor if desired:
Psychologically, if your data does not make sense as an interval scale, i.e. if the difference between options 1-2 is not the same as between options 3-4, then you should use Spearman’s correlation instead of Pearson’s. However, it will rarely make much of a difference.
Here’s the R code.
#simulate dataset of 2 variables with correlation of .50, N=1000
simul.data = mvrnorm(1000, mu = c(0,0), Sigma = matrix(c(1,0.50,0.50,1), ncol = 2), empirical = TRUE)
simul.data = as.data.frame(simul.data);colnames(simul.data) = c(“continuous1″,”continuous2″)
#divide into bins of equal length
simul.data[“likert10″] = as.numeric(cut(unlist(simul.data),breaks=10))
simul.data[“likert7″] = as.numeric(cut(unlist(simul.data),breaks=7))
simul.data[“likert5″] = as.numeric(cut(unlist(simul.data),breaks=5))
simul.data[“likert4″] = as.numeric(cut(unlist(simul.data),breaks=4))
simul.data[“likert3″] = as.numeric(cut(unlist(simul.data),breaks=3))
simul.data[“likert2″] = as.numeric(cut(unlist(simul.data),breaks=2))