Example 1: merge two dataframes based on column
df_outer = pd.merge(df1, df2, on='id', how='outer')
df_outer
Example 2: Joins with another DataFrame
df.join(df2, df.name == df2.name, 'outer').select(
df.name, df2.height).collect()
df.join(df2, 'name', 'outer').select('name', 'height').collect()
cond = [df.name == df3.name, df.age == df3.age]
df.join(df3, cond, 'outer').select(df.name, df3.age).collect()
df.join(df2, 'name').select(df.name, df2.height).collect()
df.join(df4, ['name', 'age']).select(df.name, df.age).collect()
Example 3: how to merge two dataframes
df_merge_col = pd.merge(df_row, df3, on='id')
df_merge_col
Example 4: how to merge two pandas dataframes on a column
import pandas as pd
T1 = pd.merge(T1, T2, on=T1.index, how='outer')
Example 5: How to join two dataframes by 2 columns so they have only the common rows?
import pandas as pd
import numpy as np
df1 = pd.DataFrame({'fruit': ['apple', 'banana', 'orange'] * 3,
'weight': ['high', 'medium', 'low'] * 3,
'price': np.random.randint(0, 15, 9)})
df2 = pd.DataFrame({'pazham': ['apple', 'orange', 'pine'] * 2,
'kilo': ['high', 'low'] * 3,
'price': np.random.randint(0, 15, 6)})
out = df1.merge(df2,left_on=('fruit','weight'),right_on=('pazham','kilo'),how='inner',suffixes=('_left','_right')).head(10)