Don't take it personal.
Rightly or wrongly, people are angry at 'the service' 'the railway' 'the timetable' 'the ticket price' very rarely the passenger is actually angry at you. There have been a couple of times where a passenger has been angry at me personally for something I did or didn't do but in those cases just accept responsibility and that tends to deflate the situation.
I have been spat at, sworn at, and had various hand gestures given. Luckily nothing has got physical. I don't accept the mantra of it being part of the job but I find that you have to accept that they are frustrated or whatever situation led to them being angry.
There are some very nasty people out there but overall most are ok. Many are rude and many are ignorant but most just walk past and go about their days.
The best thing you can do is to leave it all at the door. The second I spin that key, I'm in go home mode. I get in my car and leave it all at work. I used to be a Retail Manager and I took work home with me pretty much every day. Now I can compartmentalize work/life a lot better. Its the same when I book on. Every day is a new day and I start fresh.
Yesterday I was late on every trip, passed a signal at danger due to a signal failure, covered someones turn because of late notice sickness.
Today I was on time at St Albans and then dropped minutes because I was given a special stop order. Egressed due to a passenger passing out right in the peak, Tanked to +15 and got late back to depot. Not a single customer complaint or bad looks as I came into stations.
Tomorrow will be different but you can't take the baggage from the previous days or you will eventually snap.
Couple of months back we got delayed into Blackfriars. Many many announcements, full customer service and great communication. Got into Blackfriars and 1 passenger out of everyone who got off decided to take their frustration out on me. That passenger had to walk the length of the train (from where they got out), find the Driver, and voice their opinions. 1 out of an entire 8 car.. I'll take that as a win.