title: Clustering or multiple correspondence analysis for a set of check-all-that-apply questions in R
body: <p>I have a dataset that contains a set of check-all-that-apply questions. Let's say it goes like this</p>
  
  <p>Q1. "Which sports do you play"</p>
  
  <ul>
  <li>A. Football B. Basketball C. ... etc. etc. etc.</li>
  </ul>
  
  <p>Q2. "Which of the following elements motivated you to play sports?"</p>
  
  <ul>
  <li>A. Competitiveness B. Achievement C. ... etc. etc. etc.</li>
  </ul>
  
  <p>There are 4 goals I want to achieve:</p>
  
  <ol>
  <li>Understand which sports are "close" to each other</li>
  <li>Understand which elements are "close" to each other</li>
  <li>Understand which sports are associated with which elements</li>
  <li>Categorize participants considering their participation preferences in sports (e.g. stamina sports players vs. agility
  sports player vs. etc.)</li>
  </ol>
  
  <p>Is it valid to do K-means clustering on a table like this (note: the actual data is much larger; this table is only for demo)? Why and why not?</p>
  
  <p>Is multiple correspondence analysis a better way? Why and why not?</p>
  
  <pre><code>football &lt;- c(1,1,1,1,0,0,0,0)
  basketball &lt;- c(1,1,0,0,0,0,0,1)
  other &lt;- c(1,0,0,0,0,0,0,0)
  df&lt;- data.frame(football, basketball, other)
  m = as.matrix(df)
  t(m) %*% m / colSums(m)
  
  #             football basketball     other
  # football   1.0000000        0.5 0.2500000
  # basketball 0.6666667        1.0 0.3333333
  # other      1.0000000        1.0 1.0000000
  </code></pre>