I had my period every two weeks for a few months when I was working out really hard. My adrenal glands (and probably thyroid) were really low. Those glands control your hormones so it could definitely be that.
Seems like the wind blowing a different direction can throw your period off so it could be anything. Balance your life, eat right and stay active. If you're willing to take BC to regulate your periods then that's an option as well.