Documentation on Performance considerations
#### Problem description

We could use a section in the docs about performance considerations.  @TomAugspurger has a nice notebook with suggestions here:  http://nbviewer.jupyter.org/github/TomAugspurger/pandas-head-to-tail/blob/master/06-Performance.ipynb

An item to add relates to using `.assign()`, where, if you have a big DataFrame, it is more inefficient in time and memory to use `.assign()` as opposed to just creating each new column without the use of method chaining via the paradigm of 
```
    df['newcol1'] = df.a + df.b
    df['newcol2'] = df.c + df.d
```

 