I had a miscarriage 2 years ago. But recently I have had 2-3 week periods every month for the past 3-4 months. I'm not pregnant! What can it be?

Anovulation. You may be experiencing anovulatory cycles. These are cycles in which the ovary fails to release an egg. This causes the hormonal cycles to become abnormal. You should see your doctor.