Anytime you have to resort to yelling, what you are doing isn't working. I have yelled many a time as I have 4. I always know that they are the one's in control when I lose my temper.
You have to decide what works for her. Do time out's work? Find her button and push it when she is acting up. Yelling obviously doesn't work or else you wouldn't have to continue doing it. My kids seem to tune me out when I yell.
Your not a bad mom. You need more ammunition in your arsenal is all