title: Pyspark reduceByKey to return list of tuples
body: <p>I have an rdd that goes like this :</p>
  
  <pre><code>rdd = [((uid1), (product1, price1, date1)),
         ((uid1), (product2, price2, date2))]
  </code></pre>
  
  <p>I want the output to look like this :</p>
  
  <pre><code>reduced_rdd = [((uid1), ((product1, price1, date1), (product2, price2, date2)))]
  </code></pre>
  
  <p>So I tried to do something like :</p>
  
  <pre><code>reduced_rdd = rdd.reduceByKey(lambda a,b: a+b)
  </code></pre>
  
  <p>But the output is not what I want :</p>
  
  <pre><code>reduced_rdd = [((uid1), (product1, price1, date1, product2, price2, date2))]
  </code></pre>
  
  <p>Cause those tuples concatenate when I use the + operator and if I try to append them in a list I get an ugly nested list.
  How can I get a nice reduced rdd where the values are nice and quite in their own tuples?</p>