Generally, if the question is good and potentially interesting to others, leave it up. You're entirely welcome to answer your own question, and if others find this informative they will probably even reward you with upvotes.
On the other hand, if the question is extremely specific, or based on a very well known issue or a "silly mistake" (like a typo or confusing variable names) which is unlikely to offer any insight to others, then you might like to remove the question.
Basically, ask yourself if you would have found your time well spent if you had been randomly browsing SO and hit upon your question, and take that as an indicator.