Beispiel #1
0
 // 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>());
     }
 }
Beispiel #2
0
        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);
            }
        }
Beispiel #3
0
        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);
        }
Beispiel #4
0
        // 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);
        }