private void CalcularEventosSimplificados() { try { if (flagIntervalos == 0) { if (metodologia == MetodologiaAjuste.DT_CONSTANTE) { List <double> lista = FdPUtils.AgruparSegmentacion(segmentacion, eventos); eventosParaAjuste = lista.ToArray(); eventosSimplificados = FdPUtils.AgruparSegmentacionProbabilidad(lista); } else if (metodologia == MetodologiaAjuste.EVENTO_A_EVENTO) { eventosSimplificados = FdPUtils.AgruparIntervalos(eventos); eventosParaAjuste = FdPUtils.CalcularIntervalos(eventos).ToArray(); } } else { double cant = intervalos.Count; eventosSimplificados = intervalos.GroupBy(x => x).ToDictionary(x => x.Key.ToString(), x => x.Count() / (cant > 1 ? cant - 1 : cant)); eventosParaAjuste = intervalos.ToArray(); } } catch { mostrarMensaje("Error al calcular los intervalos", Color.FromArgb(255, 89, 89)); } }
private double calcularMedia() { double resultado = 0; if (rbFecha.Checked) { List <double> intervalos = FdPUtils.CalcularIntervalos(eventos); if (eventos.Count() > 0) { resultado = intervalos.Sum() / intervalos.Count(); } else { resultado = 0; } } else if (rbIntervalos.Checked) { resultado = intervalosParciales.Sum() / intervalosParciales.Count(); } return(resultado); }