public FisherExactTestResult Test(PileupItem item, PairedEvent paired) { var result = new FisherExactTestResult(); result.Sample1.Name = PositionType.MIDDLE.ToString(); result.Sample2.Name = "TERMINAL"; result.SucceedName = paired.MajorEvent; result.FailedName = paired.MinorEvent; foreach (var s in item.Samples) { foreach (var b in s) { var sample = b.Position == PositionType.MIDDLE ? result.Sample1 : result.Sample2; if (b.Event.Equals(result.SucceedName)) { sample.Succeed++; } else { sample.Failed++; } } } result.CalculateTwoTailPValue(); return(result); }
public FisherExactTestResult Test(PileupItem item, PairedEvent paired) { var result = new FisherExactTestResult(); result.Sample1.Name = StrandType.FORWARD.ToString(); result.Sample2.Name = StrandType.REVERSE.ToString(); result.SucceedName = paired.MajorEvent; result.FailedName = paired.MinorEvent; foreach (var s in item.Samples) { foreach (var b in s) { var sample = b.Strand == StrandType.FORWARD ? result.Sample1 : result.Sample2; if (b.Event.Equals(result.SucceedName)) { sample.Succeed++; } else { sample.Failed++; } } } result.CalculateTwoTailPValue(); return(result); }
public static void PrepareCount(FisherExactTestResult.Sample sample, PairedEvent events, PileupBaseList bases) { foreach (var b in bases) { if (b.Event.Equals(events.MajorEvent)) { sample.Succeed++; } else if (b.Event.Equals(events.MinorEvent)) { sample.Failed++; } } }
public FisherExactTestResult InitializeTable(PairedEvent events) { var result = new FisherExactTestResult { Sample1 = { Name = Samples[0].SampleName }, Sample2 = { Name = Samples[1].SampleName }, SucceedName = events.MajorEvent, FailedName = events.MinorEvent }; PrepareCount(result.Sample1, events, _samples[0]); PrepareCount(result.Sample2, events, _samples[1]); return(result); }
public FisherExactTestResult InitializeTable(PairedEvent events) { var result = new FisherExactTestResult { Sample1 = { Name = Samples[0].SampleName }, Sample2 = { Name = Samples[1].SampleName }, SucceedName = events.MajorEvent, FailedName = events.MinorEvent }; PrepareCount(result.Sample1, events, _samples[0]); PrepareCount(result.Sample2, events, _samples[1]); return result; }