title: ValueError: Wrong number of items passed 2, placement implies 1 when doing group by on two columns and transforming the group to calculate counts
body: <p>I have a Pandas DataFrame, which looks like the following:</p>
  <pre><code> df =
  
   user_id  item_id  time  location
    u1      i1        t1.   l1
    u2      i1        t2    l2
    u1      i2        t3    l1
    u3      i2        t4    l2
    u4      i1        t5    l1
    u5      i1        t6    l1
  </code></pre>
  <p>Expected Output:</p>
  <pre><code>  df =
   user_id  item_id  time  location count
    u1      i1       t1.   l1         3
    u2      i1       t2    l2         1
    u1      i2       t3    l1         1
    u3      i2       t4    l2         1
    u4      i1       t5    l1         3
    u5      i1       t6    l1         3
  </code></pre>
  <p>I am simply trying to group by itemid and location and compute the number of times each group occurs.</p>
  <p>This is the code, which works:</p>
  <pre><code> df.groupby(['item_id', 'location']).size()
  </code></pre>
  <p>But, I want to attach this grouping back to the df:</p>
  <p>So, I did the following to achieve this:</p>
  <pre><code>  data.groupby(['item_id', 'customer_zipcode'])['user_id','time'].transform('size')
  </code></pre>
  <p>But, I get the following error:</p>
  <pre><code> IndexError: Column(s) ['user_id', 'time'] already selected
  </code></pre>
  <p>Then, I did this:</p>
  <pre><code> data.groupby(['item_id', 'location'])['user_id','time'].transform('count')
  </code></pre>
  <p>It works, but does not give the desired output.</p>
  <p>I also tried this:</p>
  <pre><code>   data.groupby(['item_id', 'location']).transform('sum')
  </code></pre>
  <p>But, this gives a different error:</p>
  <pre><code>   TypeError: unsupported operand type(s) for +: 'Timestamp' and 'Timestamp'
  </code></pre>
  <p>So, how to group by two columns, calculate the occurences (counts) and attach it back to the dataframe?</p>