title: Groupby-Transform over an empty data frame raises exception
body: <p>Why does the following code raise an exception:</p>
  
  <pre><code># creates empty data frame with two columns
  my_df = pd.DataFrame([], columns=["a", "b"])
  # groups by the values in column "a" and transforms the values in "b" to be the sum
  my_df.groupby("a")["b"].transform(lambda x: x.sum())
  </code></pre>
  
  <p>However this results in this error:</p>
  
  <pre><code>ValueError: No objects to concatenate
  </code></pre>
  
  <p>It works if <code>my_df</code> is not empty:</p>
  
  <pre><code>list_of_numbers = [[0, 1],
                     [0, 2],
                     [1, 10]]
  my_df = pd.DataFrame(list_of_numbers, columns=["a", "b"])
  my_df.groupby("a")["b"].transform(lambda x: x.sum())
  </code></pre>
  
  
  
  <pre><code>0     3
  1     3
  2    10
  Name: b, dtype: int64
  </code></pre>
  
  <p>but <code>my_df</code> is coming from some other parts of the application so it can be empty. I'm using Pandas 0.20.3.</p>