<jupyter_start><jupyter_text>Week 12 Warm-Up Joining Tables with `pandas`Reference: [Joining Tables in pandas](https://www.analyticsvidhya.com/blog/2020/02/joins-in-pandas-master-the-different-types-of-joins-in-python/)<jupyter_code>import pandas as pd<jupyter_output><empty_output><jupyter_text>Create the `prod` dataframe for the products<jupyter_code>prod=pd.DataFrame({
    'Product_ID':[101,102,103,104,105,106,107],
    'Product_name':['Watch','Bag','Shoes','Smartphone','Books','Oil','Laptop'],
    'Category':['Fashion','Fashion','Fashion','Electronics','Study','Grocery','Electronics'],
    'Price':[299.0,1350.50,2999.0,14999.0,145.0,110.0,79999.0],
    'Seller_City':['Delhi','Mumbai','Chennai','Kolkata','Delhi','Chennai','Bengalore']
})<jupyter_output><empty_output><jupyter_text>Create the `cust` dataframe for customers<jupyter_code>cust=pd.DataFrame({
    'id':[1,2,3,4,5,6,7,8,9],
    'name':['Olivia','Aditya','Cory','Isabell','Dominic','Tyler','Samuel','Daniel','Jeremy'],
    'age':[20,25,15,10,30,65,35,18,23],
    'Product_ID':[101,0,106,0,103,104,0,0,107],
    'Purchased_Product':['Watch','NA','Oil','NA','Shoes','Smartphone','NA','NA','Laptop'],
    'City':['Mumbai','Delhi','Bangalore','Chennai','Chennai','Delhi','Kolkata','Delhi','Mumbai']
})<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.2423076923076923, 'fraction_numerical': 0.08461538461538462, 'mean_word_length': 10.72072072072072, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 1, 'lorem ipsum': 0, 'www.': 1, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '362322', 'license': 'Apache-2.0', 'n_tokens_mistral': 609, 'n_tokens_neox': 523, 'n_words': 38, 'path': 'Week 12/Week+12+Warm-Up+Type-Along+-+Joins+in+pandas_student.ipynb', 'repo_name': 'Ty-13/cu-leeds-baim3220-003-spring-2021', 'size': '1300'}