Reputation:
df1 is first dataframe have columns 1,2,8,9 df2 is second dataframe have columns 3,4 df3 is third dataframe have columns 5,6,7
Upvotes: 1
Views: 2719
Reputation: 2480
Try with :
// horizontally
pandas.concat([df1, df2, df3], axis=1)
// vertically
pandas.concat([df1, df2, df3])
For more details, you may have a look into Merge, join, concatenate and compare in pandas
Examples:
import pandas as pd
df1 = pd.DataFrame({'C1': ['1', '2', '3'], 'C2': ['a', 'b', 'c'], 'C8': ['t', 'u', 'v'], 'C3': ['w', 'x', 'y']})
print (df1)
df2 = pd.DataFrame({'C3': ['4', '5', '6', '12'], 'C4': ['d', 'e', 'f', 's']})
print (df2)
df3 = pd.DataFrame({'C5': ['7', '8', '9', '10', '11'], 'C6': ['i', 'j', 'k', 'l', 'm'], 'C7': ['n', 'o', 'p', 'q', 'r']})
print (df3)
// horizontally
print (pd.concat([df1, df2, df3], axis=1))
// vertically
print (pd.concat([df1, df2, df3]))
Output:
//df1
C1 C2 C8 C3
1 a t w
2 b u x
3 c v y
//df2
C3 C4
4 d
5 e
6 f
12 s
//df3
C5 C6 C7
7 i n
8 j o
9 k p
10 l q
11 m r
// merge df1 df2 df3 horizontally
C1 C2 C8 C3 C3 C4 C5 C6 C7
1 a t w 4 d 7 i n
2 b u x 5 e 8 j o
3 c v y 6 f 9 k p
NaN NaN NaN NaN 12 s 10 l q
NaN NaN NaN NaN NaN NaN 11 m r
// merge df1 df2 df3 vertically
C1 C2 C8 C3 C4 C5 C6
1 a t w NaN NaN NaN
2 b u x NaN NaN NaN
3 c v y NaN NaN NaN
NaN NaN NaN 4 d NaN NaN
NaN NaN NaN 5 e NaN NaN
NaN NaN NaN 6 f NaN NaN
NaN NaN NaN 12 s NaN NaN
NaN NaN NaN NaN NaN 7 i
NaN NaN NaN NaN NaN 8 j
NaN NaN NaN NaN NaN 9 k
NaN NaN NaN NaN NaN 10 l
NaN NaN NaN NaN NaN 11 m
Upvotes: 2