REF: _AXIS_TO_AXIS_NUMBER to simplify axis access
This adds a dict called ``_AXIS_TO_AXIS_NUMBER `` to NDFrame/DataFrame where the keys are the allowed parameter values for the ``axis`` parameter in various ndframe methods and the dict values are the related axis number. This makes getting to the correct axis more straight forward, see for example the new ``_get_axis_number``, and makes adding type hints to the ``axis`` parameter easier.
This is not adding things, it's moving things around and simplifying.

A nice side effect will that we can now see the allowed values for ``axis`` in as the keys in the new attribute, where previosly it had to be done in THREE(!) locations (``_AXIS_NAMES``, ``_AXIS_NUMBERS`` and ``_AXIS_ALIASES``), which is relatively insane, when you think about it...
 I've found out that this PR requires a change to the recipe on setting aliases in cookbook.rst.

I quite dislike encouraging setting aliases in the official pandas docs. If anyone actually uses that pattern in real code, is would be just confusing without being helpful IMO. But I've just changed it to the new style, for now, but would prefer to delete the section on aliases if there's no objections.  >  ex my doc-comment above.

Could you expand, I don't understand this comment (and maybe the first comment too). I think Jeff just mean to say to remove the cookbook example, alltogether, as you did (and indeed, that is not something to put in our docs I think) Ok. thanks @topper-123 very nice can you add the deprecations to issue for removal: https://github.com/pandas-dev/pandas/issues/30228