NaN group causes all groups to be NaN in groupby.transform with shift
df = DataFrame( [(1,1,3), (1,2,4),(2,1,np.nan),(2,2,np.nan)])

print df.groupby([0,1]).transform(lambda x: x)

```
2
```

0   3
1   4
2 NaN
3 NaN

print df.groupby([0,1]).transform(lambda x: x.shift(1))

   2
0 NaN
1 NaN
2 NaN
3 NaN

expected:

   2
0 NaN
1 3
2 NaN
3 NaN

use case would be group wise changes of another column (i.e., group by dimension and week, then week over week change in a new column by transform(lambda x: x/x.shift(1)-1)

edit:
apparently:

df = DataFrame( [(1,1,3), (1,2,4),(2,1,1),(2,2,np.nan)])
has the same problem...so it's sufficient to have an operation that results in a full NaN group.
edit2:
print df.groupby([0,1]).transform(lambda x: 1/x) (and the first df in this issue) does not result in a full NaN result.
so the issue seems to be with Series.shift()
