Drop by column index does not exist
#### Code Sample

```python
>>> import pandas
>>> a = pandas.DataFrame({'a': [1,2,3], 'b': [4,5,6]})
>>> a = pandas.concat([a, a], axis=1)
>>> a
   a  b  a  b
0  1  4  1  4
1  2  5  2  5
2  3  6  3  6
>>> a.drop(0, axis=1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/mitar/.virtualenv/test/lib/python3.6/site-packages/pandas/core/frame.py", line 3697, in drop
    errors=errors)
  File "/home/mitar/.virtualenv/test/lib/python3.6/site-packages/pandas/core/generic.py", line 3111, in drop
    obj = obj._drop_axis(labels, axis, level=level, errors=errors)
  File "/home/mitar/.virtualenv/test/lib/python3.6/site-packages/pandas/core/generic.py", line 3162, in _drop_axis
    raise KeyError('{} not found in axis'.format(labels))
KeyError: '[0] not found in axis'
```
#### Problem description

It does not seem to be an easy way to drop a column by its column index. This makes it hard to drop columns when there are duplicate column names in the DataFrame.

#### Expected Output

```
   b  a  b
0  4  1  4
1  5  2  5
2  6  3  6
```

#### Output of ``pd.show_versions()``

<details>

INSTALLED VERSIONS
------------------
commit: None
python: 3.6.6.final.0
python-bits: 64
OS: Linux
OS-release: 4.18.0-20-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8

pandas: 0.23.4
pytest: 4.4.1
pip: 19.0.3
setuptools: 40.4.3
Cython: None
numpy: 1.15.4
scipy: 1.1.0
pyarrow: 0.13.0
xarray: None
IPython: None
sphinx: 1.8.1
patsy: 0.5.0
dateutil: 2.7.3
pytz: 2018.5
blosc: None
bottleneck: None
tables: None
numexpr: None
feather: None
matplotlib: 3.0.0
openpyxl: None
xlrd: None
xlwt: None
xlsxwriter: None
lxml: None
bs4: None
html5lib: 0.9999999
sqlalchemy: None
pymysql: None
psycopg2: None
jinja2: 2.10
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None

</details>
