ENH: piped alias for .merge(left_index=True,right_index=True,how='outer')
#### Is your feature request related to a problem?

The way to merge two dataframes by index and default 'outer' is to use concat(axis=1), but this does not work if I want to follow a piped workflow. I would like to do the equivalent of df.merge(left_index=True,right_index=True,how='outer') but in a less verbose way.

#### Describe the solution you'd like

```python
def merge_byindex(self,df2,how='outer',**kwargs):
    """Merge input DataFrame by index.

         It is equivalent to doing pd.DataFrame.merge(left_index=True,right_index=True,how='outer',**kwargs).
    """
    return self.merge(df2,left_index=True,right_index=True,how='outer',**kwargs)
```
#### API breaking implications

no breaking implications

#### Describe alternatives you've considered

The natural alternative is to just keep doing .merge(left_index=True,right_index=True,how='outer')

#### Additional context

The reasons for having this as a separate function are the following:

1. The level of verbosity required to do this simple operation seems unreasonable.
2. Seems that maybe this particular operation could be more efficient than a general merge.
3. It would greatly simplify the documentation for this particular operation




