private static void WriteRow(TextWriter writer, PeakTransitionGroupFeatures features, PeakGroupFeatures peakGroupFeatures, CultureInfo cultureInfo, double mProphetScore, double pValue, double qValue) { char separator = TextUtil.GetCsvSeparator(cultureInfo); string fileName = SampleHelp.GetFileName(features.Id.FilePath); var fieldsArray = new List <string> { Convert.ToString(features.Id, cultureInfo), Convert.ToString(features.Id.Run, cultureInfo), fileName, Convert.ToString(peakGroupFeatures.RetentionTime, cultureInfo), Convert.ToString(peakGroupFeatures.StartTime, cultureInfo), Convert.ToString(peakGroupFeatures.EndTime, cultureInfo), features.Id.NodePep.RawUnmodifiedTextId, // Unmodified sequence, or custom ion name features.Id.NodePep.RawTextId, // Modified sequence, or custom ion name features.Id.NodePepGroup.Name, Convert.ToString(features.Id.NodePep.IsDecoy ? 1 : 0, cultureInfo), ToFieldString((float)mProphetScore, cultureInfo), ToFieldString((float)pValue, cultureInfo), ToFieldString((float)qValue, cultureInfo) }; if (IsFilterTestData) { fieldsArray.Add(peakGroupFeatures.GetFilterPairsText(cultureInfo)); } foreach (var name in fieldsArray) { writer.WriteDsvField(name, separator); writer.Write(separator); } bool first = true; foreach (float featureColumn in peakGroupFeatures.Features) { if (!first) { writer.Write(separator); } writer.WriteDsvField(ToFieldString(featureColumn, cultureInfo), separator); first = false; } writer.WriteLine(); }
private static void WriteRow(TextWriter writer, PeakTransitionGroupFeatures features, PeakGroupFeatures peakGroupFeatures, CultureInfo cultureInfo, double mProphetScore, double pValue, double qValue) { char separator = TextUtil.GetCsvSeparator(cultureInfo); string fileName = SampleHelp.GetFileName(features.Id.FilePath); var fieldsArray = new List <string> { Convert.ToString(features.Id, cultureInfo), Convert.ToString(features.Id.Run, cultureInfo), fileName, // CONSIDER: This impacts memory consumption for large-scale DIA, and it is not clear anyone uses these Convert.ToString(peakGroupFeatures.RetentionTime, cultureInfo), Convert.ToString(peakGroupFeatures.StartTime, cultureInfo), Convert.ToString(peakGroupFeatures.EndTime, cultureInfo), features.Id.RawUnmodifiedTextId, // Unmodified sequence, or custom ion name features.Id.RawTextId, // Modified sequence, or custom ion name features.Id.NodePepGroup.Name, Convert.ToString(features.IsDecoy ? 1 : 0, cultureInfo), ToFieldString((float)mProphetScore, cultureInfo), ToFieldString((float)pValue, cultureInfo), ToFieldString((float)qValue, cultureInfo) }; foreach (var name in fieldsArray) { writer.WriteDsvField(name, separator); writer.Write(separator); } bool first = true; foreach (float featureColumn in peakGroupFeatures.Features) { if (!first) { writer.Write(separator); } writer.WriteDsvField(ToFieldString(featureColumn, cultureInfo), separator); first = false; } writer.WriteLine(); }
private static void WriteRow(TextWriter writer, PeakTransitionGroupFeatures features, PeakGroupFeatures peakGroupFeatures, CultureInfo cultureInfo, double mProphetScore, double pValue, double qValue) { char separator = TextUtil.GetCsvSeparator(cultureInfo); string fileName = SampleHelp.GetFileName(features.Id.FilePath); var fieldsArray = new List<string> { Convert.ToString(features.Id, cultureInfo), Convert.ToString(features.Id.Run, cultureInfo), fileName, Convert.ToString(peakGroupFeatures.RetentionTime, cultureInfo), Convert.ToString(peakGroupFeatures.StartTime, cultureInfo), Convert.ToString(peakGroupFeatures.EndTime, cultureInfo), features.Id.NodePep.RawUnmodifiedTextId, // Unmodified sequence, or custom ion name features.Id.NodePep.RawTextId, // Modified sequence, or custom ion name features.Id.NodePepGroup.Name, Convert.ToString(features.Id.NodePep.IsDecoy ? 1 : 0, cultureInfo), ToFieldString((float) mProphetScore, cultureInfo), ToFieldString((float) pValue, cultureInfo), ToFieldString((float) qValue, cultureInfo) }; if (IsFilterTestData) { fieldsArray.Add(peakGroupFeatures.GetFilterPairsText(cultureInfo)); } foreach (var name in fieldsArray) { writer.WriteDsvField(name, separator); writer.Write(separator); } bool first = true; foreach (float featureColumn in peakGroupFeatures.Features) { if (!first) writer.Write(separator); writer.WriteDsvField(ToFieldString(featureColumn, cultureInfo), separator); first = false; } writer.WriteLine(); }
private static double GetScore(LinearModelParams parameters, PeakGroupFeatures peakGroupFeatures) { return GetScore(parameters.Weights, peakGroupFeatures, parameters.Bias); }
/// <summary> /// Calculate the score of a set of features given an array of weighting coefficients. /// </summary> private static double GetScore(IList<double> weights, PeakGroupFeatures peakGroupFeatures, double bias) { return LinearModelParams.Score(peakGroupFeatures.Features, weights, bias); }