Methods for unsupervised subset selection on categorical data I am new to this. I have a set of survey data with 18 questions (columns/features) with 165 observations. Responses are ternary: True, False, Don't Know. Each question has a correct response, which may be either True or False. I would like to choose a subset of survey questions in order to send out a new survey. I want a simpler survey of about two to five questions, so I can hopefully get more observations. 
What would be the suggested method(s) for performing preliminary feature selection on the survey data?
Initially, I thought to use PCA and select the features like in this answer. But I've read that PCA is geared towards continuous data, so I am unsure if it would be correct to use it. I've read the MCA is a categorical analogue to PCA, but I don't know if it can be used for feature selection.
 A: There could be non-gaussianity in your data, especially with the binary data. One thing you can do is an autoencoder neural network (which is precoded in matlab if you have matlab). You will have your 18 questions as inputs that will be encoded by an encoder to a smaller number of variables (say 5, but this is up to you based on how much reconstruction error you can live with by compressing your survey) and then decoded back by a decoder to 18 variables. During training matlab will try to minimize the error between the inputs and the outputs of the decoder (ideally they would be exactly the same. You can then go look at the encoder weights and each of the encoded variables will represent a different cluster of questions. Because a neural network is highly nonlinear, you can expect that at encoder variable 3 you will get questions 7, 10, and 12 with high weights and all the others with near zero, which for you would imply these questions can be merged some how. At encoder variable 4 you could get questions 1 and 2 with high weights and all others near zero, which would imply these questions could be merged.
