The first example is from Prentice (1976) and involves the mortality of beetles after exposure to various concentrations of carbon disulphide. Both a logit and a probit fit are produced for linear model . The data is given as
Covariate(x) | N | y |
---|---|---|
1.690 | 59 | 6 |
1.724 | 60 | 13 |
1.755 | 62 | 18 |
1.784 | 56 | 28 |
1.811 | 63 | 52 |
1.836 | 59 | 53 |
1.861 | 62 | 61 |
1.883 | 60 | 60 |
using System; using Imsl.Math; using Imsl.Stat; public class CategoricalGenLinModelEx1 { public static void Main(String[] args) { // Set up a PrintMatrix object for later use. PrintMatrixFormat mf; PrintMatrix p; p = new PrintMatrix(); mf = new PrintMatrixFormat(); mf.SetNoRowLabels(); mf.SetNoColumnLabels(); mf.NumberFormat = "0.0000"; double[,] x = { {1.69, 59.0, 6.0}, {1.724, 60.0, 13.0}, {1.755, 62.0, 18.0}, {1.784, 56.0, 28.0}, {1.811, 63.0, 52.0}, {1.836, 59.0, 53.0}, {1.861, 62.0, 61.0}, {1.883, 60.0, 60.0} }; CategoricalGenLinModel CATGLM3, CATGLM4; // MODEL3 CATGLM3 = new CategoricalGenLinModel(x, CategoricalGenLinModel.DistributionParameterModel.Model3); CATGLM3.LowerEndpointColumn = 2; CATGLM3.OptionalDistributionParameterColumn = 1; CATGLM3.InfiniteEstimateMethod = 1; CATGLM3.ModelIntercept = 1; int[] nvef = new int[]{1}; int[] indef = new int[]{0}; CATGLM3.SetEffects(indef, nvef); CATGLM3.UpperBound = 1; Console.Out.WriteLine("MODEL3"); p.SetTitle("Coefficient Statistics"); p.Print(mf, CATGLM3.Solve()); Console.Out.WriteLine("Log likelihood " + CATGLM3.OptimizedCriterion); p.SetTitle("Asymptotic Coefficient Covariance"); p.SetMatrixType(PrintMatrix.MatrixType.UpperTriangular); p.Print(mf, CATGLM3.CovarianceMatrix); p.SetMatrixType(PrintMatrix.MatrixType.Full); p.SetTitle("Case Analysis"); p.Print(mf, CATGLM3.CaseAnalysis); p.SetTitle("Last Coefficient Update"); p.Print(CATGLM3.LastParameterUpdates); p.SetTitle("Covariate Means"); p.Print(CATGLM3.DesignVariableMeans); p.SetTitle("Observation Codes"); p.Print(CATGLM3.ExtendedLikelihoodObservations); Console.Out.WriteLine("Number of Missing Values " + CATGLM3.NRowsMissing); // MODEL4 CATGLM4 = new CategoricalGenLinModel(x, CategoricalGenLinModel.DistributionParameterModel.Model4); CATGLM4.LowerEndpointColumn = 2; CATGLM4.OptionalDistributionParameterColumn = 1; CATGLM4.InfiniteEstimateMethod = 1; CATGLM4.ModelIntercept = 1; CATGLM4.SetEffects(indef, nvef); CATGLM4.UpperBound = 1; CATGLM4.Solve(); Console.Out.WriteLine("\nMODEL4"); Console.Out.WriteLine("Log likelihood " + CATGLM4.OptimizedCriterion); p.SetTitle("Coefficient Statistics"); p.Print(mf, CATGLM4.Parameters); } }
MODEL3 Coefficient Statistics -60.7568 5.1876 -11.7118 0.0000 34.2985 2.9164 11.7607 0.0000 Log likelihood -18.778179042334 Asymptotic Coefficient Covariance 26.9117 -15.1243 8.5052 Case Analysis 0.0577 2.5934 1.7916 0.2674 1.4475 0.1644 3.1390 2.8706 0.3470 1.0935 0.3629 -4.4976 3.7860 0.3108 -1.1879 0.6063 -5.9517 3.6562 0.2322 -1.6279 0.7954 1.8901 3.2020 0.2688 0.5903 0.9016 -0.1949 2.2878 0.2380 -0.0852 0.9558 1.7434 1.6193 0.1976 1.0767 0.9787 1.2783 1.1185 0.1382 1.1429 Last Coefficient Update 0 0 1.85192237772546E-07 1 1.33163785436183E-05 Covariate Means 0 0 1.793 1 0 Observation Codes 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 Number of Missing Values 0 MODEL4 Log likelihood -18.2323545743845 Coefficient Statistics -34.9441 2.6412 -13.2305 0.0000 19.7367 1.4852 13.2888 0.0000Link to C# source.