completed all 5 metrics, not handling negative frequencies yet