set percent to zero when no data or invalid