Skip to content

concat doesn't work with mixed Series/DataFrames #2385

Closed
@dhirschfeld

Description

@dhirschfeld

concat thows an AssertionError when passed a ciollection of mixed Series and Dataframes e.g.

s1 = pd.TimeSeries(np.sin(linspace(0, 2*pi, 100)), 
                   index=pd.date_range('01-Jan-2013', 
periods=100, freq='H')) 

s2 = pd.TimeSeries(np.cos(linspace(0, 2*pi, 100)), 
                  index=pd.date_range('01-Jan-2013', 
periods=100, freq='H')) 

df = pd.DataFrame(np.cos(linspace(0, 2*pi, 
100)).reshape(-1,1), 
                   index=pd.date_range('01-Jan-2013', 
periods=100, freq='H')) 

In [23]: pd.concat([df,df], axis=1).shape 
Out[23]: (100, 2) 

In [24]: pd.concat([s1,s2], axis=1).shape 
Out[24]: (100, 2) 

In [25]: pd.concat([s1,s2,s1], axis=1).shape 
Out[25]: (100, 3) 

In [26]: pd.concat([s1,df,s2], axis=1).shape 
Traceback (most recent call last):

  File "<ipython-input-9-4512588e71f2>", line 1, in <module>
    pd.concat([s1,df,s2], axis=1).shape

  File "c:\dev\code\pandas\pandas\tools\merge.py", line 881, in concat
    return op.get_result()

  File "c:\dev\code\pandas\pandas\tools\merge.py", line 960, in get_result
    columns=self.new_axes[1])

  File "c:\dev\code\pandas\pandas\core\frame.py", line 376, in __init__
    mgr = self._init_dict(data, index, columns, dtype=dtype)

  File "c:\dev\code\pandas\pandas\core\frame.py", line 505, in _init_dict
    dtype=dtype)

  File "c:\dev\code\pandas\pandas\core\frame.py", line 5181, in _arrays_to_mgr
    mgr = BlockManager(blocks, axes)

  File "c:\dev\code\pandas\pandas\core\internals.py", line 499, in __init__
    self._verify_integrity()

  File "c:\dev\code\pandas\pandas\core\internals.py", line 584, in _verify_integrity
    raise AssertionError('Block shape incompatible with manager')

AssertionError: Block shape incompatible with manager

In [27]: pd.__version__
Out[27]: '0.10.0.dev-fbd77d5'

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions