Everything is always explainable.
Any number of data points can always be generated by 1 equation. Thus, you can always create a rule, no matter how complex, that explains all of the given evidence.
For instance, if you are told not to eat ice cream, because it is bad for you, but then later are offered ice cream by that same person, there are infinite explanations that would explain all of that evidence. I will put 3 or 4 simple ones:
1) Something has changed that makes ice cream no longer bad for you.
2) The rule about not eating ice cream, was really an oversimplification of a rule "don't eat too much ice cream" or "don't eat ice cream before dinner"
3) The person telling you to eat ice cream doesn't care about your best interests.
4) That person was incorrect when they told you not to eat ice cream, and noting has changed, except for this person now has updated information.
You see? This is a human tendency called Rationalization. People like to believe that they move through life, acting, (at least most of the time), based on rational though processes. However, the vast majority of the time, people decide something based on something more like cursory though, or even instinct, and then figure out an explanation afterwards.
Here is an extremely good article on Rationalization, that I think you might like.
http://lesswrong.com/lw/20/the_apologist_and_the_revolutionary/ (
http://lesswrong.com/lw/20/the_apologist_and_the_revolutionary/)