Unexpected result when combining Series into a DataFrame · Issue #1730 · pandas-dev/pandas (original) (raw)

Pandas 0.8.1:

import pandas as pd
rng_a = pd.date_range('1/1/2012',periods=4,freq='3H')
rng_b = pd.date_range('1/1/2012',periods=4,freq='4H')
a = pd.Series([0, 1, 2, 3], rng_a)
b = pd.Series([0, 1, 2, 3], rng_b)
pd.DataFrame({'a':a, 'b': b})

unexpectedly returns:

                    a   b
1/1/2012 00:00:00   0   0
1/1/2012 03:00:00   1 NaN
1/1/2012 06:00:00   2 NaN
1/1/2012 09:00:00   3 NaN
1/1/2012 12:00:00 NaN   3

The correct result though is obtained with:

a = pd.Series([0, 1, 2, 3], ['1/1/2012 00:00:00', '1/1/2012 03:00:00', '1/1/2012 06:00:00', '1/1/2012 09:00:00'])
b = pd.Series([0, 1, 2, 3], ['1/1/2012 00:00:00', '1/1/2012 04:00:00', '1/1/2012 08:00:00', '1/1/2012 12:00:00'])
pd.DataFrame({'a':a, 'b': b})

correctly returns:

                    a   b
1/1/2012 00:00:00   0   0
1/1/2012 03:00:00   1 NaN
1/1/2012 04:00:00 NaN   1
1/1/2012 06:00:00   2 NaN
1/1/2012 08:00:00 NaN   2
1/1/2012 09:00:00   3 NaN
1/1/2012 12:00:00 NaN   3