public static CWPAnalysisScopeEnum GetScope(this CWPAnalysusScoreOutput computation) { CWPAnalysisScopeEnum RequiredScopes = CWPAnalysisScopeEnum.nothing; switch (computation) { case CWPAnalysusScoreOutput.categoryCommonality: case CWPAnalysusScoreOutput.categoryParticularity: RequiredScopes = CWPAnalysisScopeEnum.globalLevel; break; case CWPAnalysusScoreOutput.globalMinDensity: case CWPAnalysusScoreOutput.frequencyDensity: RequiredScopes = CWPAnalysisScopeEnum.globalLevel; break; case CWPAnalysusScoreOutput.flatSiteParticularity: RequiredScopes = CWPAnalysisScopeEnum.flatSiteLevel; break; case CWPAnalysusScoreOutput.siteCommonality: case CWPAnalysusScoreOutput.siteParticularity: RequiredScopes = CWPAnalysisScopeEnum.unitaryLevel; break; case CWPAnalysusScoreOutput.binaryCWParticularity: RequiredScopes = CWPAnalysisScopeEnum.mainLevel; break; case CWPAnalysusScoreOutput.IWFICF: case CWPAnalysusScoreOutput.IDFIWFICF: RequiredScopes = CWPAnalysisScopeEnum.rawLevel; break; } if (computation.HasFlag(CWPAnalysusScoreOutput.category)) { RequiredScopes |= CWPAnalysisScopeEnum.categoryLevel; } if (computation.HasFlag(CWPAnalysusScoreOutput.site)) { RequiredScopes |= CWPAnalysisScopeEnum.siteLevel; } if (computation.HasFlag(CWPAnalysusScoreOutput.flat)) { RequiredScopes |= CWPAnalysisScopeEnum.flatSiteLevel; } return(RequiredScopes); }
public static String GetSignature(this CWPAnalysusScoreOutput computation) { switch (computation) { case CWPAnalysusScoreOutput.binaryCWParticularity: return("BCP"); break; case CWPAnalysusScoreOutput.siteParticularity: return("SP"); break; case CWPAnalysusScoreOutput.categoryParticularity: return("CP"); break; case CWPAnalysusScoreOutput.flatSiteParticularity: return("FSP"); break; case CWPAnalysusScoreOutput.siteCommonality: return("SC"); break; case CWPAnalysusScoreOutput.categoryCommonality: return("CC"); break; case CWPAnalysusScoreOutput.frequencyDensity: return("FD"); break; case CWPAnalysusScoreOutput.globalMinDensity: return("GMD"); break; case CWPAnalysusScoreOutput.IDFIWFICF: case CWPAnalysusScoreOutput.IWFICF: return(computation.ToString()); break; } return(computation.ToString().Replace(",", "")); }
/// <summary> /// Gets the score. /// </summary> /// <param name="term">The term.</param> /// <param name="computation">The computation.</param> /// <returns></returns> public Double GetScore(String term, CWPAnalysusScoreOutput computation) { Double output = 0; switch (computation) { case CWPAnalysusScoreOutput.categoryCommonality: output = globalReport.GetScore(term, x => x.commonality_score); break; case CWPAnalysusScoreOutput.categoryParticularity: output = globalReport.GetScore(term, x => x.particularity_score); break; case CWPAnalysusScoreOutput.siteParticularity: output = unitaryReport.GetScore(term, x => x.particularity_score); break; case CWPAnalysusScoreOutput.siteCommonality: output = unitaryReport.GetScore(term, x => x.commonality_score); break; case CWPAnalysusScoreOutput.flatSiteParticularity: output = flatReport.GetScore(term, x => x.particularity_score); break; case CWPAnalysusScoreOutput.frequencyDensity: output = globalReport.GetScore(term, x => x.mean_score); break; case CWPAnalysusScoreOutput.globalMinDensity: output = globalReport.GetScore(term, x => x.min_score); break; case CWPAnalysusScoreOutput.binaryCWParticularity: output = datasetReport.GetScore(term, x => x.MacroParticularity); if (output != 1) { if (datasetReport.GetScore(term, x => x.MaxParticularity) == 1) { output = 0; } else { output = 1; } } break; } return(output); }
public void Deploy(CWPAnalysusScoreOutput computation, AnalysisPurpose purpose = AnalysisPurpose.application, Boolean update = false) { if (purpose == AnalysisPurpose.exploration) { RequiredScopes = CWPAnalysisScopeEnum.all; } else { if (update) { RequiredScopes |= computation.GetScope(); } else { RequiredScopes = computation.GetScope(); } } Computation = computation; }
/// <summary> /// Initializes a new instance of the <see cref="FeatureCWPAnalysisSettings"/> class. /// </summary> /// <param name="computation">The computation.</param> /// <param name="purpose">The purpose.</param> public FeatureCWPAnalysisSettings(CWPAnalysusScoreOutput computation, AnalysisPurpose purpose = AnalysisPurpose.application) { Deploy(computation, purpose); }