/// <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> public static bool TryParse(string val, out SufficientStatistics result) { return (MissingStatistics.TryParse(val, out result) || GaussianStatistics.TryParse(val, out result) || BooleanStatistics.TryParse(val, out result) || DiscreteStatistics.TryParse(val, out result) || ContinuousStatistics.TryParse(val, out result) || StatisticsList.TryParse(val, out result)); }
/// <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> /// Converts current object As Boolean Statistics. /// </summary> /// <returns>Boolean Statistics.</returns> public override BooleanStatistics AsBooleanStatistics() { int meanAsInt = (int)Mean; if (!IsMissing() && (meanAsInt < -1 || meanAsInt > 1)) { throw new InvalidCastException(string.Format(CultureInfo.InvariantCulture, "Cannot cast {0} to Boolean.", Mean)); } return(IsMissing() || meanAsInt == -1 ? BooleanStatistics.GetMissingInstance : BooleanStatistics.GetInstance(meanAsInt == 1)); }
/// <summary> /// Converts current object As Boolean Statistics. /// </summary> /// <returns>Boolean Statistics.</returns> public override BooleanStatistics AsBooleanStatistics() { if (!IsMissing() && (Value < -1 || Value > 1)) { throw new InvalidCastException(string.Format(CultureInfo.InvariantCulture, "Cannot convert {0} to Boolean", Value)); } return(IsMissing() || Value == -1 ? BooleanStatistics.GetMissingInstance : BooleanStatistics.GetInstance(Value == 1)); }
/// <summary> /// Converts current object As Boolean Statistics. /// </summary> /// <returns>Boolean Statistics.</returns> public override BooleanStatistics AsBooleanStatistics() { int valAsInt = (int)Value; if (!IsMissing() && !(valAsInt < -1 || valAsInt > 1)) { throw new InvalidCastException(string.Format(CultureInfo.InvariantCulture, "Cannot convert {0} to Boolean.", Value)); } return(IsMissing() || valAsInt == -1 ? BooleanStatistics.GetMissingInstance : BooleanStatistics.GetInstance(valAsInt == 1)); }