join to dataframes pandas
# Joins with another DataFrame
df.join(df2, df.name == df2.name, 'outer').select(
df.name, df2.height).collect()
# [Row(name=None, height=80), Row(name=u'Bob', height=85), Row(
# name=u'Alice', height=None)]
df.join(df2, 'name', 'outer').select('name', 'height').collect()
# [Row(name=u'Tom', height=80), Row(name=u'Bob', height=85), Row(
# name=u'Alice', height=None)]
cond = [df.name == df3.name, df.age == df3.age]
df.join(df3, cond, 'outer').select(df.name, df3.age).collect()
# [Row(name=u'Alice', age=2), Row(name=u'Bob', age=5)]
df.join(df2, 'name').select(df.name, df2.height).collect()
# Row(name=u'Bob', height=85)]
df.join(df4, ['name', 'age']).select(df.name, df.age).collect()
# [Row(name=u'Bob', age=5)]
import pandas as pd
clients = {'Client_ID': [111,222,333,444,555],
'Client_Name': ['Jon Snow','Maria Green', 'Bill Jones','Rick Lee','Pamela Lopez']
}
df1 = pd.DataFrame(clients, columns= ['Client_ID','Client_Name'])
countries = {'Client_ID': [111,222,333,444,777],
'Client_Country': ['UK','Canada','Spain','China','Brazil']
}
df2 = pd.DataFrame(countries, columns= ['Client_ID', 'Client_Country'])
Inner_Join = pd.merge(df1, df2, how='inner', on=['Client_ID', 'Client_ID'])
print(Inner_Join)