BUG: str.extract alignment problem on i/o dataframes.
Tried the code from here: http://stackoverflow.com/questions/21641857/pandas-valueerror-convert-float-nan-to-integer-i-o-csv-file
Not sure if this is fixed in the latest build but I had a similar problem as the one described in the Stackoverflow when I upgraded to the latest stable version of `pandas`

Seem like it shifts 1 cell up when you load the csv:

```
import pandas as pd
import numpy as np

data = pd.read_csv('dffile.csv', index_col=0)
df=data[['AreaNo.','ID']]
is_even = df['ID'].str.extract('([0-9]+).*')
```

Results (Notice the `Nan` and the values shifted up one cell from dataframe df)

```
>>> print (is_even)
Data
1        378
2       4740
3       3445
4       2801
5       4726
6       6239
7       6239
8        558
9        584
10       557
11       571
12       524
13       524
14       258
15       740
16       645
17       684
18       NaN
Name: ID, dtype: object
>>> print (df.ID)
Data
1           676
2           378
3          4740
4          3445
5         2801A
6          4726
7         6239B
8        6239.5
9           558
10          584
11          557
12      571 1/2
13          524
14          524
15          258
16          740
17          645
18          684
Name: ID, dtype: object
```

But when ran from a non loaded dataframes it is Not shifted:

```
import pandas as pd

df=pd.DataFrame({'ID': ['10A','6.5', '4 A', '3 1/2'], 'Name': ['J','K','L','M']})


def ExtractU(df):
    is_even = df['ID'].str.extract('(\d+).*')

>>> is_even = df['ID'].str.extract('(\d+).*')
>>> is_even
0    10
1     6
2     4
3     3
Name: ID, dtype: object
```

Saw this in the most recent pandas update it gives a ValueError because the loaded data includes a Nan.
