You are 21 years and a virgin, why do you think its a problem, what is wrong with that? Thats perfectly okay. If you have a concern that some of your friends are getting laid but you are missing the train, you are not. You are honest with your body, mind, soul and you chose the way others should follow you. Keep yourself safe as long as you can, that is only good for you.
Losing temper is not related to not having sex, its more of a brain work along with your traits and stress. If you think its for not getting laid, then next time you feel that way, go and have a handjob. Only one of my friend was successful on this, everytime he would lose teper, would have a handjob. Be it in home or office or restaurant, he will go to the rest room and relieve himself.
Physically and psychologically speaking, there is no corelation, except if your friends are getting laid and taunts you for being a virgin, that may affect you indirectly as a loser. Trust me you are no loser, you are an honest person with body and heart.