What can I do?

I get sad all the time for no reason and i feel terrible about it. My best friend can always tell and she always thinks it’s her, and I guess in a way, her caring so much about it is part if it because I don’t want to hurt her. I get so frustrated with myself that I go home and physically and mentally beat myself up most nights. Any advice on how to learn to control this or solve the problem?