// TODO: Add methods that will be called by the view /// <summary> /// Completion for frequency Table /// </summary> /// <param name="result"></param> /// <param name="e"></param> private void GetRegressionResultsCompleted(LogRegressionResults result, Exception e) { if (e != null) { NotificationEventArgs <Exception> notification = new NotificationEventArgs <Exception>("", e); this.Notify(ErrorNotice, notification); } else { this.RegressionResults = result; this.Notify(RegressResultsLoadedEvent, new NotificationEventArgs <Exception>()); } }
void logrCtxRegResults_Completed(object sender, EventArgs e) { InvokeOperation <LogRegressionResults> result = (InvokeOperation <LogRegressionResults>)sender; if (result.HasError) { } else { LogRegressionResults returnedData = ((InvokeOperation <LogRegressionResults>)sender).Value; _rresultsCompleted(returnedData, null); } }
internal LogRegressionResults FormatLogRegressionResults(LogRegressionResults LogRegressionResults) { LogRegressionResults.ScoreStatistic = Convert.ToDouble(LogRegressionResults.ScoreStatistic.ToString("F4")); LogRegressionResults.ScoreP = Convert.ToDouble(LogRegressionResults.ScoreP.ToString("F4")); LogRegressionResults.LRStatistic = Convert.ToDouble(LogRegressionResults.LRStatistic.ToString("F4")); LogRegressionResults.LRP = Convert.ToDouble(LogRegressionResults.LRP.ToString("F4")); LogRegressionResults.FinalLikelihood = Convert.ToDouble(LogRegressionResults.FinalLikelihood.ToString("F4")); foreach (var item in LogRegressionResults.Variables) { item.OddsRatio = Convert.ToDouble(item.OddsRatio.ToString("F4")); item.NinetyFivePercent = Convert.ToDouble(item.NinetyFivePercent.ToString("F4")); item.Ci = Convert.ToDouble(item.Ci.ToString("F4")); item.Coefficient = Convert.ToDouble(item.Coefficient.ToString("F4")); item.Se = Convert.ToDouble(item.Se.ToString("F4")); item.Z = Convert.ToDouble(item.Z.ToString("F4")); item.P = Convert.ToDouble(item.P.ToString("F4")); } return(LogRegressionResults); }
// POST api/<controller> public HttpResponseMessage Post([FromBody] JObject value) { LogisticRegressionDomainService LogisticRegressionDomainService = new LogisticRegressionDomainService(); GadgetParameters GadgetParameters; ControllerCommon CommonClass = new ControllerCommon(); List <EwavRule_Base> Rules = new List <EwavRule_Base>(); JObject gadgetJSON = (JObject)value["gadget"]; List <EwavDataFilterCondition> dashboardFilters = new List <EwavDataFilterCondition>(); GadgetParameters = new GadgetParameters(); GadgetParameters.DatasourceName = gadgetJSON["@DatasourceName"].ToString(); GadgetParameters.InputVariableList = new Dictionary <string, string>(); GadgetParameters.TableName = CommonClass.GetDatabaseObject(GadgetParameters.DatasourceName); Mapper Mapper = new Controllers.Mapper(); Rules = CommonClass.ReadRules(value); dashboardFilters = CommonClass.GetFilters(value); GadgetParameters.GadgetFilters = CommonClass.GetFilters(gadgetJSON, true); List <string> columnNames = new List <string>(); Dictionary <string, string> inputVariableList = Mapper.MapJSONToRegressionInputVariableList(gadgetJSON); foreach (KeyValuePair <string, string> kvp in inputVariableList) { if (kvp.Value.ToLower().Equals("unsorted") || kvp.Value.ToLower().Equals("dependvar") || kvp.Value.ToLower().Equals("weightvar") || kvp.Value.ToLower().Equals("matchvar")) { columnNames.Add(kvp.Key); } else if (kvp.Value.ToLower().Equals("discrete")) { columnNames.Add(kvp.Key); } } List <DictionaryDTO> inputDtoList = new List <DictionaryDTO>(); inputDtoList = Mapper.MapDictToList(inputVariableList); LogRegressionResults LogRegressionResults = LogisticRegressionDomainService.GetRegressionResult( GadgetParameters, columnNames, inputDtoList, dashboardFilters, Rules, CommonClass.AdvancedDataFilterString); LogRegressionResults = Mapper.FormatLogRegressionResults(LogRegressionResults); var obj = new HttpResponseMessage() { Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(LogRegressionResults))//dt.GetJson()) }; obj.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); return(obj); }