public void TTestPowerAnalysisConstructorTest3() { // Examples from R's graphical manual // http://rgm2.lab.nig.ac.jp/RGM2/func.php?rd_id=pwr:pwr.t.test double actual, expected; { var target = new TTestPowerAnalysis(OneSampleHypothesis.ValueIsDifferentFromHypothesis) { Effect = 0.2, Samples = 60, Size = 0.10, }; target.ComputePower(); expected = 0.4555818; actual = target.Power; Assert.AreEqual(expected, actual, 1e-5); } { var target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.ValuesAreDifferent) { Effect = 2 / 2.8, Samples1 = 30, Samples2 = 30, }; target.ComputePower(); expected = 0.7764889; actual = target.Power; Assert.AreEqual(expected, actual, 1e-6); } { var target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.FirstValueIsGreaterThanSecond) { Effect = 0.3, Power = 0.75, }; target.ComputeSamples(); expected = 120.2232016; actual = target.Samples1; Assert.AreEqual(expected, actual, 1e-6); Assert.AreEqual(target.Samples1, target.Samples2); } }
public void TTestPowerAnalysisConstructorTest2() { // Example from R's graphical manual // http://rgm2.lab.nig.ac.jp/RGM2/func.php?rd_id=pwr:pwr.t2n.test double effectSize = 0.6; int n1 = 90; int n2 = 60; TwoSampleTTestPowerAnalysis target; double actual, expected; target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.FirstValueIsGreaterThanSecond) { Effect = effectSize, Samples1 = n1, Samples2 = n2, }; target.ComputePower(); expected = 0.9737262; actual = target.Power; Assert.AreEqual(expected, actual, 1e-6); target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.FirstValueIsSmallerThanSecond) { Effect = effectSize, Samples1 = n1, Samples2 = n2, }; target.ComputePower(); expected = 0.0; actual = target.Power; Assert.AreEqual(expected, actual, 1e-6); target = new TwoSampleTTestPowerAnalysis(TwoSampleHypothesis.ValuesAreDifferent) { Effect = effectSize, Samples1 = n1, Samples2 = n2, }; target.ComputePower(); expected = 0.9470154; actual = target.Power; Assert.AreEqual(expected, actual, 1e-6); }