/// <summary> /// Try Parse the value. /// </summary> /// <param name="val">The Value.</param> /// <param name="result">Sufficient Statistics result.</param> /// <returns>Returns true if parsed properly.</returns> new public static bool TryParse(string val, out SufficientStatistics result) { result = null; if (string.IsNullOrEmpty(val)) { result = GetMissingInstance; return(false); } else { string[] fields = val.Split(','); if (!(fields.Length == 3)) { return(false); } double mean, variance; int sampleSize; if (double.TryParse(fields[0], out mean) && double.TryParse(fields[1], out variance) && int.TryParse(fields[2], out sampleSize)) { result = GaussianStatistics.GetInstance(mean, variance, sampleSize); return(true); } return(false); } }
/// <summary> /// Compares object with Is Missing. /// </summary> /// <param name="stats">Sufficient Statistics.</param> /// <returns>Returns true if fount equals.</returns> public override bool Equals(SufficientStatistics stats) { if (stats == null) { return(false); } return(stats.IsMissing()); }
/// <summary> /// Compares object with Sufficient Statistics. /// </summary> /// <param name="obj">The Object.</param> /// <returns>Returns true if fount equals.</returns> public override bool Equals(object obj) { SufficientStatistics stats = obj as SufficientStatistics; if (stats != null) { return(Equals(stats)); } else { return(false); } }
/// <summary> /// Try Parse the value. /// </summary> /// <param name="val">The Value.</param> /// <param name="result">Sufficient Statistics result.</param> /// <returns>Returns true if parsed properly.</returns> new public static bool TryParse(string val, out SufficientStatistics result) { result = null; if (string.IsNullOrEmpty(val) || val.Equals("missing", StringComparison.CurrentCultureIgnoreCase) || val.Equals("?", StringComparison.CurrentCultureIgnoreCase)) { result = GetInstance; } return(result != null); }
/// <summary> /// Compares a given SufficientStatistics object with the current object. /// </summary> /// <param name="stats">SufficientStatistics object to be compared.</param> /// <returns>True if both the objects are equal.</returns> public override bool Equals(SufficientStatistics stats) { if (stats == null) { throw new ArgumentNullException("stats"); } if (IsMissing() && stats.IsMissing()) { return(true); } return(this.AsGaussianStatistics().Equals(stats)); // let the most general class decide }
/// <summary> /// Try to Parse the value. /// </summary> /// <param name="val">The value.</param> /// <param name="result">Sufficient Statistics result.</param> /// <returns>Returns true if parsed properly.</returns> new public static bool TryParse(string val, out SufficientStatistics result) { int valAsInt; if (int.TryParse(val, out valAsInt)) { result = DiscreteStatistics.GetInstance(valAsInt); return(true); } else { result = null; return(false); } }
/// <summary> /// Try Parse. /// </summary> /// <param name="val">Value String.</param> /// <param name="result">Sufficient Statistics.</param> /// <returns>Return true in parsed properly.</returns> new public static bool TryParse(string val, out SufficientStatistics result) { double valAsDouble; if (double.TryParse(val, out valAsDouble)) { result = ContinuousStatistics.GetInstance(valAsDouble); return(true); } else { result = null; return(false); } }
/// <summary> /// Compares Sufficient Statistics. /// </summary> /// <param name="stats">Sufficient Statistics.</param> /// <returns>Returns true if equal.</returns> public override bool Equals(SufficientStatistics stats) { if (stats == null) { return(false); } if (IsMissing() && stats.IsMissing()) { return(true); } GaussianStatistics gaussStats = stats.AsGaussianStatistics(); return(_mean == gaussStats._mean && _variance == gaussStats._variance && _sampleSize == gaussStats._sampleSize); }
/// <summary> /// Compares a given SufficientStatistics object with the current object. /// </summary> /// <param name="stats">SufficientStatistics object to be compared</param> /// <returns>True if both the objects are equal.</returns> public override bool Equals(SufficientStatistics stats) { if (stats == null) { throw new ArgumentNullException("stats"); } if (stats.IsMissing()) { return(IsMissing()); } else if (stats is BooleanStatistics) { return(_value == stats.AsBooleanStatistics()._value); } else { return(stats.Equals(this)); } }
/// <summary> /// Try converting the given string into SufficientStatistics object. /// </summary> /// <param name="val">string to be converted.</param> /// <param name="result">SufficentStatistics object which corresponding to the given string.</param> /// <returns>Whether string was successfully converted.</returns> new public static bool TryParse(string val, out SufficientStatistics result) { if (string.IsNullOrEmpty(val)) { throw new ArgumentNullException("val"); } result = null; if (val.Equals("true", StringComparison.CurrentCultureIgnoreCase) || val == "1") { result = BooleanStatistics.GetInstance(true); } else if (val.Equals("false", StringComparison.CurrentCultureIgnoreCase) || val == "0") { result = BooleanStatistics.GetInstance(false); } else if (val.Equals("null", StringComparison.CurrentCultureIgnoreCase) || val == "-1") { result = BooleanStatistics.GetMissingInstance; } return(result != null); }
/// <summary> /// Compares Sufficient Statistics with Discrete Statistics and Boolean Statistics. /// </summary> /// <param name="stats">Sufficient Statistics.</param> /// <returns>Returns true if equal.</returns> public override bool Equals(SufficientStatistics stats) { if (stats == null) { return(false); } if (IsMissing() && stats.IsMissing()) { return(true); } else if (stats is DiscreteStatistics) { return(this.Value == stats.AsDiscreteStatistics().Value); } else if (stats is BooleanStatistics) { return(this.Value == stats.AsDiscreteStatistics().Value); } else { return(stats.Equals(this)); } }