Your original problem is that pip cannot write the logs to the folder.
IOError: [Errno 13] Permission denied: '/Users/markwalker/Library/Logs/pip.log'
You need to cd into a folder in which the process invoked can write like /tmp
so a cd /tmp
and re invoking the command will probably work but is not what you want.
BUT actually for this particular case (you not wanting to use sudo
for installing python packages) and no need for global package installs you can use the --user
flag like this :
pip install --user <packagename>
and it will work just fine.
I assume you have a one user python python installation and do not want to bother with reading about virtualenv (which is not very userfriendly) or pipenv.
As some people in the comments section have pointed out the next approach is not a very good idea unless you do not know what to do and got stuck:
Another approach for global packages like in your case you want to do something like :
chown -R $USER /Library/Python/2.7/site-packages/
or more generally
chown -R $USER <path to your global pip packages>