Answer: When you informed your co-worker that she is self-centered, whiny, and needy, did she reply that you are rude, insensitive and immature? Because if you actually made such hurtful comments, that's exactly what you are.
Although you can avoid people who annoy you in your personal life, you don’t get to choose your work colleagues. So instead of reacting emotionally, you must develop strategies for managing these relationships.
For example, when your self-absorbed co-worker tries to engage you in irrelevant conversation, calmly say "I'm sorry, but I'm really busy right now, so I don't have time to talk.” Then return to your work. If she persists, keep repeating this statement.
Because your feelings toward this woman seem to go beyond mere annoyance, you may want to consider why she makes you so angry. If you can determine the reason for your intense reaction, you might learn a lot about yourself.
If some of your colleagues seem particularly annoying, you may just be different personality types. To find out, see Who's Your "Work Style Opposite"?