title: Fill nulls based on a group by value
body: <p>I have the following df</p>
  <pre><code>id1 id2  uid . . . 
   1  100   na
   1  101 1000
   1  101 1000
   2  102 1001
   2  103   na
   3  104 1002
   3  104 1002
   3  104 1002
   3  104   na
   3  105   na
   3  106   na
  </code></pre>
  <p>I want to group by <code>id1</code> and fill <code>uid</code></p>
  <p>I tried doing a min/max fill using the following snippet:</p>
  <pre><code> `df['uid'] = df.groupby(['id1']).transform(lambda x: x.fillna(x.max()))`
  </code></pre>
  <p>Fill na min or max should work either way because the each id1 should have a distinct uid, however its returning different values so it may be something in the way im filling values</p>
  <p>desired output:</p>
  <pre><code>id1 id2  uid . . . 
   1  100 1000
   1  101 1000
   1  101 1000
   2  102 1001
   2  103 1001
   3  104 1002
   3  104 1002
   3  104 1002
   3  104 1002
   3  105 1002
   3  106 1002
  </code></pre>