public void Input() { var baseInput = new BaseInputsEntity { InputValue = new List <decimal>() { 3, 4, new decimal(3.5), 5, new decimal(3.5), 4, 5, new decimal(5.5), 4, 5 } }; var responseLista = new VariavelContinuaApp().Build(baseInput); var baseInputNew = new BaseInputsEntity { InputValue = new List <decimal> { 20, 37, 40, 32, 28, 26, 25, 32, 39, 40, 50, 47, 46, 31, 24, 21, 35, 39, 38, 43 } }; var lista = new VariavelContinuaApp().Build(baseInputNew); }
public void Input() { var inputs = new BaseInputsEntity { InputValue = new List <decimal> { 3, 4, new decimal(3.5), 5, new decimal(3.5), 4, 5, new decimal(5.5), 4, 5 } }; var resultado = new MedidasTendenciaApp().Build(inputs); Assert.IsTrue(resultado.MedidasTendenciaEntity.Media == new decimal(4.25)); Assert.IsTrue(resultado.MedidasTendenciaEntity.Mediana == 4); Assert.IsTrue(resultado.MedidasTendenciaEntity.Moda[0] == 4 && resultado.MedidasTendenciaEntity.Moda[1] == 5); }
public void Input() { var numeros = new BaseInputsEntity { InputValue = new List <decimal> { 1000, 2000, 2000, 5000, 4000, 4000, 2000, 3000, 2000, 3000, 3000, 3000, 2000, 3000, 3000, 3000, 3000, 1000, 2000, 3000 } }; var lista = new VariavelDiscretaApp().Build(numeros); }
public MedidasTendenciaContainerEntity Build(BaseInputsEntity baseInputs) { return(new MedidasTendenciaContainerEntity() { InputValue = baseInputs.InputValue, Rol = baseInputs.Rol, MedidasTendenciaEntity = Calcular(baseInputs.InputValue), }); }
public VariavelDiscretaContainerEntity Build(BaseInputsEntity baseInputs) { var f = new List <decimal>(); var fePorcentList = new List <decimal>(); var listaVariavelDiscreta = new List <VariavelDiscretaEntity>(); var media = MathCoreApp.MediaComum(baseInputs.InputValue); var agrupamento = new AgrupamentoApp().Build(baseInputs.Rol); foreach (var item in agrupamento) { var fePorcent = MathCoreApp.Porcentagem(item.Quantidade, agrupamento.Select(q => q.Quantidade).Sum()); f.Add(item.Quantidade); fePorcentList.Add(fePorcent); listaVariavelDiscreta.Add(new VariavelDiscretaEntity { XI = item.XI, FI = item.Quantidade, FEPorcent = Math.Round(fePorcent, 2), F = f.Sum(), FPorcent = fePorcentList.Sum(), XIFI = item.XI * item.Quantidade, XIFIQuadFI = PreencherXIFIQUADFI(item.XI, media, item.Quantidade), }); } var medidasTendenciaApp = new MedidasTendenciaApp().Calcular(baseInputs.InputValue); var variancia = Variancia(listaVariavelDiscreta.Select(q => q.XI).ToList(), listaVariavelDiscreta.Select(q => q.FI).ToList(), media, baseInputs.Amostra); var dp = MathCoreApp.RaizQuadrada(variancia); var cv = Math.Round((decimal)((dp / media)) * 100, 2); var medidasDispersaoApp = new MedidasDispersaoEntity { Variancia = variancia, DP = dp, CV = cv }; return(new VariavelDiscretaContainerEntity { InputValue = baseInputs.InputValue, Rol = baseInputs.Rol, VariavelDiscretaEntity = listaVariavelDiscreta, MedidasDispersaoEntity = medidasDispersaoApp, MedidasTendenciaEntity = medidasTendenciaApp, AgrupamentoEntity = agrupamento }); }
public MedidasDispersaoContainerEntity Build(BaseInputsEntity baseInputs) { var media = MathCoreApp.MediaComum(baseInputs.InputValue); var inputValueQuadrado = MathCoreApp.SomaTodosAoQuadrado(baseInputs.InputValue, media); var medidasDispersao = Calcular(baseInputs.InputValue, media, baseInputs.Amostra); return(new MedidasDispersaoContainerEntity() { Media = media, Rol = baseInputs.Rol, InputValue = baseInputs.InputValue, InputValueQuadrado = inputValueQuadrado, SomaInputValueQuadrado = inputValueQuadrado.Sum(), MedidasDispersaoEntity = medidasDispersao }); }
public VariavelContinuaContainerEntity Build(BaseInputsEntity baseInputs) { var xMAx = baseInputs.InputValue.Max(); var xMin = baseInputs.InputValue.Min(); var al = (xMAx - xMin) + 1; var numeroPreK = (int)Math.Sqrt(baseInputs.InputValue.Count()); var K = new List <decimal> { numeroPreK - 1, numeroPreK, numeroPreK + 1 }; var Ic = GetIC(al, K); var minimo = xMin; var maximo = minimo + (int)Ic.IC; var f = new List <int>(); var fePorcentList = new List <decimal>(); var listaTabelaQuantitativa = new List <VariavelContinuaEntity>(); for (int i = 1; i <= Ic.Classes; i++) { var fePorcent = (decimal)(baseInputs.Rol.Count(x => x >= minimo && x < maximo) / (decimal)baseInputs.Rol.Count()) * 100; var count = baseInputs.Rol.Count(x => x >= minimo && x < maximo); f.Add(count); fePorcentList.Add(fePorcent); var xi = MediaComum(new List <decimal>() { minimo, maximo }); listaTabelaQuantitativa.Add(new VariavelContinuaEntity { Classe = i, XI = xi, Range = new[] { minimo, maximo }, FI = count, FEPorcent = Math.Round(fePorcent, 2), F = f.Sum(), FPorcent = Math.Round(fePorcentList.Sum(), 2), XIFI = xi * count, }); minimo = maximo; maximo = maximo + (int)Ic.IC; } var media = listaTabelaQuantitativa.Sum(e => e.XIFI) / listaTabelaQuantitativa.Sum(e => e.FI); var variancia = VarianciaContinua(listaTabelaQuantitativa.Select(q => q.XI).ToList(), listaTabelaQuantitativa.Select(x => x.FI).ToList(), media, listaTabelaQuantitativa.Sum(y => y.FI), baseInputs.Amostra); var dp = MathCoreApp.RaizQuadrada(variancia); var cv = MathCoreApp.Porcentagem(dp, media); var medidasDispersao = new MedidasDispersaoEntity { Variancia = variancia, DP = dp, CV = cv }; var medidasTendencia = new MedidasTendenciaEntity { Media = media, Mediana = MedianaQuantitativa(listaTabelaQuantitativa, Ic.IC), Moda = ModaQuantitativa(listaTabelaQuantitativa) }; return(new VariavelContinuaContainerEntity { InputValue = baseInputs.InputValue, Rol = baseInputs.Rol, VariavelContinuaEntity = listaTabelaQuantitativa, MinLinha = xMin, MaxLinha = xMAx, AL = al, K = K, IC = Ic, MedidasDispersaoEntity = medidasDispersao, MedidasTendenciaEntity = medidasTendencia, EXIFI = listaTabelaQuantitativa.Sum(entity => entity.XIFI), EFI = listaTabelaQuantitativa.Sum(entity => entity.FI), }); }
public void Input() { var antonio = new BaseInputsEntity { InputValue = new List <decimal> { 3, 7, 10, 4 } }; var antonioResult = new MedidasDispersaoApp().Build(antonio); /* `X */ Assert.IsTrue(antonioResult.InputValue[0] == 3, "O Valor deveria ser 3"); Assert.IsTrue(antonioResult.InputValue[1] == 7, "O Valor deveria ser 7"); Assert.IsTrue(antonioResult.InputValue[2] == 10, "O Valor deveria ser 10"); Assert.IsTrue(antonioResult.InputValue[3] == 4, "O Valor deveria ser 4"); Assert.IsTrue(antonioResult.InputValueQuadrado[0] == 9); Assert.IsTrue(antonioResult.InputValueQuadrado[1] == 1); Assert.IsTrue(antonioResult.InputValueQuadrado[2] == 16); Assert.IsTrue(antonioResult.InputValueQuadrado[3] == 4); Assert.IsTrue(antonioResult.Media == new decimal(6)); var pedro = new BaseInputsEntity { InputValue = new List <decimal> { 4, 5, 10, 6 } }; var pedroResult = new MedidasDispersaoApp().Build(pedro); Assert.IsTrue(pedroResult.InputValueQuadrado[0] == 4); Assert.IsTrue(pedroResult.InputValueQuadrado[1] == 5); Assert.IsTrue(pedroResult.InputValueQuadrado[2] == 10); Assert.IsTrue(pedroResult.InputValueQuadrado[3] == 6); Assert.IsTrue(pedroResult.InputValueQuadrado[0] == new decimal(5.06), "O Valor deveria ser = 5.06"); Assert.IsTrue(pedroResult.InputValueQuadrado[1] == new decimal(1.56), "O Valor deveria ser 1.56"); Assert.IsTrue(pedroResult.InputValueQuadrado[2] == new decimal(14.06), "O Valor deveria ser 14.06)"); Assert.IsTrue(pedroResult.InputValueQuadrado[3] == new decimal(0.06), "O Valor deveria ser 0.06"); Assert.IsTrue(pedroResult.Media == new decimal(6.25)); var gasolina = new BaseInputsEntity { InputValue = new List <decimal>() { new decimal(2.61), new decimal(2.64), new decimal(2.56), new decimal(2.61), new decimal(2.60), new decimal(2.58) } }; var gasolinaResult = new MedidasDispersaoApp().Build(gasolina); }