RE: How to merge two dataframes in Pandas?
I have two dataframes in pandas, and I would like to merge them based on a common column. How can I do this?
You can merge two dataframes in pandas using the `merge` function. Here's a basic example:
```python
df3 = pd.merge(df1, df2, on='common_column')
```
In this example, `df1` and `df2` are the dataframes you want to merge, and 'common_column' is the name of the column common to both dataframes that you want to merge them on. This will perform an inner join, meaning only the rows with keys that exist in both dataframes will be included in the result.
If you want to perform different types of joins (outer, left, right), you can do so by specifying the `how` parameter.
```python
df3 = pd.merge(df1, df2, on='common_column', how='outer') # Full outer join
df3 = pd.merge(df1, df2, on='common_column', how='left') # Left outer join
df3 = pd.merge(df1, df2, on='common_column', how='right') # Right outer join
```
Also, if the common column has different names in both dataframes, use `left_on` and `right_on` parameters.
```python
df3 = pd.merge(df1, df2, left_on='column1', right_on='column2') # 'column1' in df1 and 'column2' in df2 are same
```
By default, `merge` will try to merge on all columns with the same name in both dataframes. To merge only on a subset of columns, specify those column names in the `on` parameter.
Lastly, remember that `merge` doesn't change original dataframes, it returns a new dataframe that's the result of the merge.