In [1]:
import numpy as np
import pandas as pd
from pandas import DataFrame,Series

In [4]:
arr1 = np.arange(9).reshape(3,3)

arr1


Out[4]:
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

In [6]:
np.concatenate([arr1,arr1],axis=1)


Out[6]:
array([[0, 1, 2, 0, 1, 2],
       [3, 4, 5, 3, 4, 5],
       [6, 7, 8, 6, 7, 8]])

In [7]:
np.concatenate([arr1,arr1],axis=0)


Out[7]:
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8],
       [0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

In [9]:
ser1 = Series([0,1,2],index=['T','U','V'])

ser2 = Series([3,4],index=['X','Y'])

In [10]:
ser1


Out[10]:
T    0
U    1
V    2
dtype: int64

In [11]:
ser2


Out[11]:
X    3
Y    4
dtype: int64

In [12]:
pd.concat([ser1,ser2])


Out[12]:
T    0
U    1
V    2
X    3
Y    4
dtype: int64

In [17]:
# with 'axis=1' will produce a DataFrame
pd.concat([ser1,ser2],axis=1)


Out[17]:
0 1
T 0.0 NaN
U 1.0 NaN
V 2.0 NaN
X NaN 3.0
Y NaN 4.0

In [18]:
# using index hierarchy
pd.concat([ser1,ser2],keys=['cat1','cat2'])


Out[18]:
cat1  T    0
      U    1
      V    2
cat2  X    3
      Y    4
dtype: int64

In [19]:
df1 = DataFrame(np.random.randn(4,3),columns=['X','Y','Z'])

df1


Out[19]:
X Y Z
0 0.186555 0.576375 -1.614911
1 -0.166164 -0.384737 0.133196
2 -0.662548 0.209259 -0.360263
3 -0.260326 -0.998950 -0.705059

In [20]:
df2 = DataFrame(np.random.randn(3,3),columns=['Y','Q','X'])

df2


Out[20]:
Y Q X
0 0.927276 2.130514 2.179540
1 -0.082977 -0.386744 0.738752
2 0.080866 -0.139042 2.142830

In [21]:
pd.concat([df1,df2])


Out[21]:
Q X Y Z
0 NaN 0.186555 0.576375 -1.614911
1 NaN -0.166164 -0.384737 0.133196
2 NaN -0.662548 0.209259 -0.360263
3 NaN -0.260326 -0.998950 -0.705059
0 2.130514 2.179540 0.927276 NaN
1 -0.386744 0.738752 -0.082977 NaN
2 -0.139042 2.142830 0.080866 NaN

In [22]:
# ignore indexes while concat
pd.concat([df1,df2],ignore_index=True)


Out[22]:
Q X Y Z
0 NaN 0.186555 0.576375 -1.614911
1 NaN -0.166164 -0.384737 0.133196
2 NaN -0.662548 0.209259 -0.360263
3 NaN -0.260326 -0.998950 -0.705059
4 2.130514 2.179540 0.927276 NaN
5 -0.386744 0.738752 -0.082977 NaN
6 -0.139042 2.142830 0.080866 NaN

In [ ]: