The problem is almost certainly that elpy isn't using the same Python you think it is.
Since you're on macOS, you have at least one other Python—Apple's pre-installed version of Python 2.7 in /usr/bin/python. And in most versions of macOS, this includes a special "Extras" directory full of stuff that doesn't normally come builtin with Python—which includes numpy, but not pandas, and in some versions not even pip.
So, your pip show numpy and pip show pandas are using the Python 3.5 pip, because that's the only pip you have.
But if elpy is finding Apple's Python 2.7 rather than the Python 3.5 you installed, it will find the Extras numpy and won't find any pandas.
You should also see other weird misbehaviors, like elpy trying to complete print as the Python 2.x statement rather than the Python 3.x function—but the easiest way to diagnose the problem is not to dive into all of those details, and instead just M-x elpy-config. It should show something like this:
Virtualenv........: None
RPC Python........: 2.7.10 (/usr/bin/python)
Interactive Python: python (/usr/bin/python)
Emacs.............: 25.3.0
… etc.
If so, the answer is that you need to fix the elpy configuration to use /usr/local/bin/python3 (or whatever the appropriate path is to your Python 3.5).
I believe just configuring elpy-rpc-python-command will cause it to pick up everything else properly. Or you can just do it from within elpy-config itself. But that's probably a better question for emacs.SE than the Python tag on SO.