title: PySpark reduceByKey? to add Key/Tuple
body: <p>I have the following data and what I want to do is</p>
  
  <pre><code>[(13, 'D'), (14, 'T'), (32, '6'), (45, 'T'), (47, '2'), (48, '0'), (49, '2'), (50, '0'), (51, 'T'), (53, '2'), (54, '0'), (13, 'A'), (14, 'T'), (32, '6'), (45, 'A'), (47, '2'), (48, '0'), (49, '2'), (50, '0'), (51, 'X')]
  </code></pre>
  
  <p>Is for each key count the instances of the value (a 1 string character). So I first did a map:</p>
  
  <pre><code>.map(lambda x: (x[0], [x[1], 1]))
  </code></pre>
  
  <p>Making it now a key/tuple of:</p>
  
  <pre><code>[(13, ['D', 1]), (14, ['T', 1]), (32, ['6', 1]), (45, ['T', 1]), (47, ['2', 1]), (48, ['0', 1]), (49, ['2', 1]), (50, ['0', 1]), (51, ['T', 1]), (53, ['2', 1]), (54, ['0', 1]), (13, ['A', 1]), (14, ['T', 1]), (32, ['6', 1]), (45, ['A', 1]), (47, ['2', 1]), (48, ['0', 1]), (49, ['2', 1]), (50, ['0', 1]), (51, ['X', 1])]
  </code></pre>
  
  <p>I just cant for the last part figure out how to for each key count the instances of that letter. For instance Key 13 will have 1 D and 1 A. While 14 will have 2 T's, etc. </p>