pydata/pandas — pull request #6747 by dalejung (2014-03-31 02:45:19+00:00)
Title: Quick shift fixes

Adjustments to the quick fix PR.

https://gist.github.com/dalejung/9731798#file-vb_suite-log

```
-------------------------------------------------------------------------------
Test name | head[ms] | base[ms] | ratio |
-------------------------------------------------------------------------------
frame_shift_c_order_axis1 | 14.4524 | 52.8037 | 0.2737 |
frame_shift_c_order_axis0 | 16.9516 | 46.5320 | 0.3643 |
frame_shift_axis0 | 15.2656 | 16.3440 | 0.9340 |
frame_shift_axis1 | 22.2600 | 22.0567 | 1.0092 |
```

Note, that the speed up was really in sending a C order array to `np.take`. You'll notice that master is slow for `frame_shift_c_order_` which are tests where the `block.values` is c_contiguous. Thus current master always transposes.

The original example had it's speed up because it `np.roll`ed `df.values` which is C ordered (fast) while the `.blocks` were were (slow).