diff --git a/tqdm/_tqdm.py b/tqdm/_tqdm.py
--- a/tqdm/_tqdm.py
+++ b/tqdm/_tqdm.py
@@ -581,6 +581,10 @@ def inner(df, func, *args, **kwargs):
                             not isinstance(df, _Rolling_and_Expanding):
                         # DataFrame or Panel
                         axis = kwargs.get('axis', 0)
+                        if axis == 'index':
+                            axis = 0
+                        elif axis == 'columns':
+                            axis = 1
                         # when axis=0, total is shape[axis1]
                         total = df.size // df.shape[axis]
 

diff --git a/tqdm/tests/tests_pandas.py b/tqdm/tests/tests_pandas.py
--- a/tqdm/tests/tests_pandas.py
+++ b/tqdm/tests/tests_pandas.py
@@ -104,7 +104,7 @@ def task_func(x):
         assert res1.equals(res2)
 
         # apply
-        for axis in [0, 1]:
+        for axis in [0, 1, 'index', 'columns']:
             res3 = df.progress_apply(task_func, axis=axis)
             res4 = df.apply(task_func, axis=axis)
             assert res3.equals(res4)

When 'index' or 'columns' is passed as pandas axis, convert to corres…
…ponding int

- [x] I have visited the [source website], and in particular
  read the [known issues]
- [x] I have searched through the [issue tracker] for duplicates
- [ ] I have mentioned version numbers, operating system and
  environment, where applicable:
  ```python
  import tqdm, sys
  print(tqdm.__version__, sys.version, sys.platform)
  ```
- [x] If applicable, I have mentioned the relevant/related issue(s)

  [source website]: https://github.com/tqdm/tqdm/
  [known issues]: https://github.com/tqdm/tqdm/#faq-and-known-issues
  [issue tracker]: https://github.com/tqdm/tqdm/issues?q=


# [Codecov](https://codecov.io/gh/tqdm/tqdm/pull/570?src=pr&el=h1) Report
> Merging [#570](https://codecov.io/gh/tqdm/tqdm/pull/570?src=pr&el=desc) into [master](https://codecov.io/gh/tqdm/tqdm/commit/19cd7d735a235177b7f8a4413391226c4aac0c8d?src=pr&el=desc) will **decrease** coverage by `0.57%`.
> The diff coverage is `0%`.



```diff
@@            Coverage Diff            @@
##           master    #570      +/-   ##
=========================================
- Coverage   99.27%   98.7%   -0.58%     
=========================================
  Files           8       8              
  Lines         692     696       +4     
  Branches      123     125       +2     
=========================================
  Hits          687     687              
- Misses          3       5       +2     
- Partials        2       4       +2
```

A performance test failed on Python 2.7. I'm not sure whether or how to address this issue.
tqdm/tests/tests_pandas.py::test_pandas_setup tqdm/tests/tests_pandas.py::test_pandas_rolling_expanding tqdm/tests/tests_pandas.py::test_pandas_series tqdm/tests/tests_pandas.py::test_pandas_groupby_apply tqdm/tests/tests_pandas.py::test_pandas_leave tqdm/tests/tests_pandas.py::test_pandas_apply_args_deprecation tqdm/tests/tests_pandas.py::test_pandas_deprecation
tqdm/tests/tests_pandas.py::test_pandas_data_frame