user_data = { 'CustomerID': [1, 2, 3, 4, 5], 'Name': ['Rose', 'Bob', 'Jack', 'David', 'Lucy'], 'Email': ['rose@163.com', 'bob@163.com', 'jack@163.com', 'david@163.com', 'lucy@163.com'] } df_user = pd.DataFrame(user_data)
buy_data = { 'CustomerID': [1 ,2, 1, 3, 4, 3, 6], 'OrderID': [101, 102, 103, 104,105, 106, 107], 'Procuct': ['A', 'B', 'C', 'D', 'E', 'A', 'B'], 'Quantity': [2, 1, 3, 2, 4, 1, 2] } df_buy= pd.DataFrame(buy_data)
df_merge = pd.merge(df_user, df_buy, on='CustomerID', how='inner') print(df_merge) ''' CustomerID Name Email OrderID Procuct Quantity 0 1 Rose rose@163.com 101 A 2 1 1 Rose rose@163.com 103 C 3 2 2 Bob bob@163.com 102 B 1 3 3 Jack jack@163.com 104 D 2 4 3 Jack jack@163.com 106 A 1 5 4 David david@163.com 105 E 4 '''
df_merge = pd.merge(df_user, df_buy, on='CustomerID', how='outer') print(df_merge) ''' CustomerID Name Email OrderID Procuct Quantity 0 1 Rose rose@163.com 101.0 A 2.0 1 1 Rose rose@163.com 103.0 C 3.0 2 2 Bob bob@163.com 102.0 B 1.0 3 3 Jack jack@163.com 104.0 D 2.0 4 3 Jack jack@163.com 106.0 A 1.0 5 4 David david@163.com 105.0 E 4.0 6 5 Lucy lucy@163.com NaN NaN NaN 7 6 NaN NaN 107.0 B 2.0 '''
df_merge = pd.merge(df_user, df_buy, on='CustomerID', how='left') print(df_merge) ''' CustomerID Name Email OrderID Procuct Quantity 0 1 Rose rose@163.com 101.0 A 2.0 1 1 Rose rose@163.com 103.0 C 3.0 2 2 Bob bob@163.com 102.0 B 1.0 3 3 Jack jack@163.com 104.0 D 2.0 4 3 Jack jack@163.com 106.0 A 1.0 5 4 David david@163.com 105.0 E 4.0 6 5 Lucy lucy@163.com NaN NaN NaN '''
df_merge = pd.merge(df_user, df_buy, on='CustomerID', how='right') print(df_merge) ''' CustomerID Name Email OrderID Procuct Quantity 0 1 Rose rose@163.com 101 A 2 1 2 Bob bob@163.com 102 B 1 2 1 Rose rose@163.com 103 C 3 3 3 Jack jack@163.com 104 D 2 4 4 David david@163.com 105 E 4 5 3 Jack jack@163.com 106 A 1 6 6 NaN NaN 107 B 2 '''
|