{
  "_id": "6ae2519e327abcdf8686560e",
  "Package": "flexhaz",
  "Title": "Dynamic Failure Rate Distributions for Survival Analysis",
  "Version": "0.5.3",
  "Authors@R": "person(\"Alexander\", \"Towell\", , \"queelius@gmail.com\", role = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0001-6443-9897\"))",
  "Description": "Flexible framework for specifying survival distributions\nthrough their hazard (failure rate) functions. Define arbitrary\ntime-varying hazard functions to model complex failure patterns\nincluding bathtub curves, proportional hazards with covariates,\nand other non-standard hazard behaviors. Provides automatic\ncomputation of survival, CDF, PDF, quantiles, and sampling.\nImplements the likelihood model interface for maximum\nlikelihood estimation with right-censored and left-censored\nsurvival data.",
  "License": "GPL (>= 3)",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "Config/testthat/edition": "3",
  "VignetteBuilder": "knitr",
  "URL": "https://github.com/queelius/flexhaz,\nhttps://queelius.github.io/flexhaz/",
  "BugReports": "https://github.com/queelius/flexhaz/issues",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-28 19:43:57 UTC",
    "User": "root"
  },
  "Author": "Alexander Towell [aut, cre] (ORCID:\n<https://orcid.org/0000-0001-6443-9897>)",
  "Maintainer": "Alexander Towell <queelius@gmail.com>",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-10-28 09:52:06 UTC",
  "RemoteUrl": "https://github.com/cran/flexhaz",
  "RemoteRef": "HEAD",
  "RemoteSha": "d743d3b867817431a43840a879310bb6ac28a639",
  "_user": "cran",
  "_type": "src",
  "_file": "flexhaz_0.5.3.tar.gz",
  "_fileid": "https://r2.ropensci.org/28379ebaf1a76d44846c057f19f59ce34658df377f3b568a9d6d083e435dab1a",
  "_filesize": 1147386,
  "_sha256": "28379ebaf1a76d44846c057f19f59ce34658df377f3b568a9d6d083e435dab1a",
  "_expires": "2027-02-05T19:48:44.000Z",
  "_created": "2026-10-28T19:43:57.000Z",
  "_published": "2026-10-28T19:48:46.488Z",
  "_upstream": "https://github.com/cran/flexhaz",
  "_status": "success",
  "_maintainer": {
    "name": "Alexander Towell",
    "email": "queelius@gmail.com",
    "login": "queelius",
    "orcid": "0000-0001-6443-9897",
    "twitter": "@queelius",
    "description": "Alexander Richard Towell (Alexander Towell / Alex Towell; queelius). AI, mathematics, privacy, and open-source research.",
    "uuid": 1896674
  },
  "_jobs": [
    {
      "job": 123058399483,
      "time": 118,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12845434891"
    },
    {
      "job": 123058399382,
      "time": 118,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12846456271"
    },
    {
      "job": 123053498811,
      "time": 560,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12846133029"
    },
    {
      "job": 123058399439,
      "time": 242,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "12846441520"
    },
    {
      "job": 123058399475,
      "time": 98,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12845684384"
    },
    {
      "job": 123058399593,
      "time": 102,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12847095626"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575",
  "_commit": {
    "id": "d743d3b867817431a43840a879310bb6ac28a639",
    "author": "Alexander Towell <queelius@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.5.3\n",
    "time": 1793181126
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "numDeriv",
      "role": "Imports"
    },
    {
      "package": "algebraic.dist",
      "role": "Imports"
    },
    {
      "package": "likelihood.model",
      "role": "Imports"
    },
    {
      "package": "generics",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 3,
  "_updates": [
    {
      "week": "2026-10",
      "n": 1
    },
    {
      "week": "2026-12",
      "n": 1
    },
    {
      "week": "2026-21",
      "n": 1
    },
    {
      "week": "2026-44",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.5.0",
      "date": "2026-03-02"
    },
    {
      "name": "0.5.1",
      "date": "2026-03-19"
    },
    {
      "name": "0.5.2",
      "date": "2026-05-23"
    },
    {
      "name": "0.5.3",
      "date": "2026-10-28"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "queelius",
      "count": 4,
      "uuid": 1896674
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "followers": 634,
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 298,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/flexhaz"
  },
  "_devurl": "https://github.com/queelius/flexhaz",
  "_pkgdown": "https://queelius.github.io/flexhaz/",
  "_searchresults": 39,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/flexhaz.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_homeurl": "https://github.com/queelius/flexhaz",
  "_realowner": "queelius",
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.5.0",
      "date": "2026-03-02"
    },
    {
      "version": "0.5.1",
      "date": "2026-03-19"
    },
    {
      "version": "0.5.2",
      "date": "2026-05-23"
    },
    {
      "version": "0.5.3",
      "date": "2026-10-28"
    }
  ],
  "_exports": [
    "assumptions",
    "cdf",
    "cum_haz",
    "dfr_dist",
    "dfr_exponential",
    "dfr_gompertz",
    "dfr_loglogistic",
    "dfr_weibull",
    "fit",
    "hazard",
    "hess_loglik",
    "inv_cdf",
    "is_dfr_dist",
    "is_likelihood_model",
    "loglik",
    "params",
    "qqplot_residuals",
    "sampler",
    "score",
    "sup",
    "surv"
  ],
  "_help": [
    {
      "page": "assumptions.dfr_dist",
      "title": "Retrieve the assumptions a DFR distribution makes about the data",
      "topics": [
        "assumptions.dfr_dist"
      ]
    },
    {
      "page": "cdf.dfr_dist",
      "title": "Method for obtaining the cdf of a 'dfr_dist' object.",
      "topics": [
        "cdf.dfr_dist"
      ]
    },
    {
      "page": "cum_haz",
      "title": "Method for obtaining the cumulative hazard function of an object.",
      "topics": [
        "cum_haz"
      ]
    },
    {
      "page": "cum_haz.dfr_dist",
      "title": "Method for obtaining the cumulative hazard function of a 'dfr_dist' object.",
      "topics": [
        "cum_haz.dfr_dist"
      ]
    },
    {
      "page": "density.dfr_dist",
      "title": "Method for obtaining the density (pdf) of a 'dfr_dist' object.",
      "topics": [
        "density.dfr_dist"
      ]
    },
    {
      "page": "dfr_dist",
      "title": "Constructor for 'dfr_dist' objects",
      "topics": [
        "dfr_dist"
      ]
    },
    {
      "page": "dfr_exponential",
      "title": "Exponential Distribution (Constant Hazard)",
      "topics": [
        "dfr_exponential"
      ]
    },
    {
      "page": "dfr_gompertz",
      "title": "Gompertz Distribution (Exponential Growth Hazard)",
      "topics": [
        "dfr_gompertz"
      ]
    },
    {
      "page": "dfr_loglogistic",
      "title": "Log-Logistic Distribution (Non-Monotonic Hazard)",
      "topics": [
        "dfr_loglogistic"
      ]
    },
    {
      "page": "dfr_weibull",
      "title": "Weibull Distribution (Power-Law Hazard)",
      "topics": [
        "dfr_weibull"
      ]
    },
    {
      "page": "diagnostics",
      "title": "Diagnostic Methods for DFR Distributions",
      "concept": [
        "dfr_dist"
      ],
      "topics": [
        "diagnostics"
      ]
    },
    {
      "page": "distributions",
      "title": "Classic Survival Distribution Constructors",
      "concept": [
        "distributions"
      ],
      "topics": [
        "distributions"
      ]
    },
    {
      "page": "fit.dfr_dist",
      "title": "MLE solver for dfr_dist objects",
      "topics": [
        "fit.dfr_dist"
      ]
    },
    {
      "page": "hazard.dfr_dist",
      "title": "Method for obtaining the hazard function of a 'dfr_dist' object.",
      "topics": [
        "hazard.dfr_dist"
      ]
    },
    {
      "page": "hess_loglik.dfr_dist",
      "title": "Hessian of log-likelihood for dfr_dist",
      "topics": [
        "hess_loglik.dfr_dist"
      ]
    },
    {
      "page": "inv_cdf.dfr_dist",
      "title": "Method for obtaining the quantile (inverse cdf) of an object.",
      "topics": [
        "inv_cdf.dfr_dist"
      ]
    },
    {
      "page": "is_dfr_dist",
      "title": "Function for determining whether an object is a 'dfr_dist' object.",
      "topics": [
        "is_dfr_dist"
      ]
    },
    {
      "page": "loglik.dfr_dist",
      "title": "Log-likelihood method for 'dfr_dist' objects",
      "topics": [
        "loglik.dfr_dist"
      ]
    },
    {
      "page": "params.dfr_dist",
      "title": "Method for obtaining the parameters of a 'dfr_dist' object.",
      "topics": [
        "params.dfr_dist"
      ]
    },
    {
      "page": "plot.dfr_dist",
      "title": "Plot DFR Distribution Functions",
      "topics": [
        "plot.dfr_dist"
      ]
    },
    {
      "page": "print.dfr_dist",
      "title": "Print method for 'dfr_dist' objects.",
      "topics": [
        "print.dfr_dist"
      ]
    },
    {
      "page": "qqplot_residuals",
      "title": "Q-Q Plot for Cox-Snell Residuals",
      "topics": [
        "qqplot_residuals"
      ]
    },
    {
      "page": "residuals.dfr_dist",
      "title": "Residuals for DFR Distribution Fits",
      "topics": [
        "residuals.dfr_dist"
      ]
    },
    {
      "page": "sampler.dfr_dist",
      "title": "Sampling function for 'dfr_dist' objects.",
      "topics": [
        "sampler.dfr_dist"
      ]
    },
    {
      "page": "score.dfr_dist",
      "title": "Score function (gradient of log-likelihood) for dfr_dist",
      "topics": [
        "score.dfr_dist"
      ]
    },
    {
      "page": "sup.dfr_dist",
      "title": "Method for retrieving the support of an object 'x'.",
      "topics": [
        "sup.dfr_dist"
      ]
    },
    {
      "page": "surv.dfr_dist",
      "title": "Method for obtaining the survival function of a 'dfr_dist' object.",
      "topics": [
        "surv.dfr_dist"
      ]
    }
  ],
  "_readme": "https://github.com/cran/flexhaz/raw/HEAD/README.md",
  "_rundeps": [
    "algebraic.dist",
    "algebraic.mle",
    "boot",
    "generics",
    "likelihood.model",
    "MASS",
    "mvtnorm",
    "numDeriv",
    "R6"
  ],
  "_vignettes": [
    {
      "source": "custom_distributions.Rmd",
      "filename": "custom_distributions.html",
      "title": "Creating Custom Distributions",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The Power of Custom Hazards",
        "The Three Functions",
        "Level 1: Just the Hazard",
        "Level 2: Add Analytical Cumulative Hazard",
        "Level 3: Add Analytical Score Function",
        "Complete Example: Makeham Distribution",
        "Step 1: Derive the Mathematics",
        "Step 2: Implement",
        "Step 3: Test",
        "Writing Custom Derivative Functions",
        "Use Standard R Indexing",
        "Return Correct Types",
        "Handle Censoring",
        "Performance Comparison",
        "Real-World Example: Bathtub Curve",
        "Summary",
        "Next Steps"
      ],
      "created": "2026-03-02 22:00:07",
      "modified": "2026-03-02 22:00:07",
      "commits": 1
    },
    {
      "source": "custom_derivatives.Rmd",
      "filename": "custom_derivatives.html",
      "title": "Custom Derivatives for Maximum Likelihood Estimation",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "Setup",
        "The Weibull Distribution",
        "Simulating Data",
        "Approach 1: Minimal — Just the Hazard Rate",
        "Approach 2: Analytical Score + Analytical Hessian",
        "Approach 3: Provide Score Only, Let numDeriv Handle the Hessian",
        "Using Pre-Built Constructors",
        "Computing Standard Errors",
        "Distribution Reference",
        "Next Steps"
      ],
      "created": "2026-03-02 22:00:07",
      "modified": "2026-03-02 22:00:07",
      "commits": 1
    },
    {
      "source": "failure_rate.Rmd",
      "filename": "failure_rate.html",
      "title": "Dynamic Failure Rate Distributions",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "Why hazard-based parameterization?",
        "Mathematical background",
        "Getting Started",
        "Using Built-in Distributions",
        "Creating Custom Distributions",
        "Distribution Methods",
        "Hazard and cumulative hazard",
        "Survival and CDF",
        "PDF (Density)",
        "Quantile function (inverse CDF)",
        "Sampling",
        "Overriding parameters",
        "Likelihood Model Interface",
        "Log-likelihood for survival data",
        "Creating test data",
        "Computing log-likelihood",
        "Score function (gradient)",
        "Hessian of log-likelihood",
        "Maximum Likelihood Estimation",
        "Working with censored data",
        "Example: Weibull MLE",
        "Custom Hazard Functions",
        "Bathtub hazard",
        "Time-covariate interaction",
        "Integration with algebraic.dist",
        "Model Diagnostics",
        "Cox-Snell Residuals",
        "Martingale Residuals",
        "Summary",
        "Next Steps"
      ],
      "created": "2026-03-02 22:00:07",
      "modified": "2026-03-02 22:00:07",
      "commits": 1
    },
    {
      "source": "flexhaz-package.Rmd",
      "filename": "flexhaz-package.html",
      "title": "flexhaz: Hazard-First Survival Modeling",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The Problem",
        "The Idea",
        "Installation",
        "Your First Distribution",
        "Get Distribution Functions",
        "Generate Samples",
        "Fitting to Data",
        "Maximum Likelihood Estimation",
        "Model Diagnostics",
        "Working with Censored Data",
        "Right-Censoring",
        "Left-Censoring",
        "Custom Column Names",
        "Beyond Exponential: Weibull",
        "The Real Power: Custom Hazards",
        "Define a bathtub hazard",
        "Plot the hazard curve",
        "Plot the survival curve",
        "Simulate data and fit via MLE",
        "Inspect the fit",
        "Residual diagnostics",
        "Built-in Distributions",
        "Key Functions",
        "Where to Go Next"
      ],
      "created": "2026-03-02 22:00:07",
      "modified": "2026-03-02 22:00:07",
      "commits": 1
    },
    {
      "source": "reliability_engineering.Rmd",
      "filename": "reliability_engineering.html",
      "title": "Reliability Engineering Applications",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "Case Study 1: Capacitor Lifetime Analysis",
        "The Data",
        "Model Comparison",
        "Model Selection",
        "Interpretation",
        "Case Study 2: B-Life Calculations",
        "Visual Representation",
        "Case Study 3: Warranty Analysis",
        "Case Study 4: Maintenance Scheduling",
        "Case Study 5: Competing Failure Modes",
        "Model Diagnostics",
        "Summary",
        "Best Practices"
      ],
      "created": "2026-03-02 22:00:07",
      "modified": "2026-03-02 22:00:07",
      "commits": 1
    }
  ],
  "_score": 5.545307116465824,
  "_indexed": false,
  "_nocasepkg": "flexhaz",
  "_universes": [
    "cran"
  ],
  "_indexurl": "https://queelius.r-universe.dev/flexhaz",
  "_previous": "0.5.2",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.5.3",
      "date": "2026-10-28T19:45:54.000Z",
      "distro": "resolute",
      "commit": "d743d3b867817431a43840a879310bb6ac28a639",
      "fileid": "https://r2.ropensci.org/e49d2de58030667bd4a123983c108e3e36e668b529a02f95ece677536477c264",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.5.3",
      "date": "2026-10-28T19:45:56.000Z",
      "distro": "resolute",
      "commit": "d743d3b867817431a43840a879310bb6ac28a639",
      "fileid": "https://r2.ropensci.org/411040b6f702857b6127cf51263db7de6118c6e572754a9acfdc7766951f3705",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.5.3",
      "date": "2026-10-28T19:48:20.000Z",
      "commit": "d743d3b867817431a43840a879310bb6ac28a639",
      "fileid": "https://r2.ropensci.org/7330e516f2429f83e9b3892db655541f37c7a35d81cc061ed92132fb2a7c0600",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.5.3",
      "date": "2026-10-28T19:45:35.000Z",
      "commit": "d743d3b867817431a43840a879310bb6ac28a639",
      "fileid": "https://r2.ropensci.org/a14de826fb7ea3c9938a05f4f9b4192891cd2fc652711196e141278ce5ec3061",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.5.3",
      "date": "2026-10-28T19:45:31.000Z",
      "commit": "d743d3b867817431a43840a879310bb6ac28a639",
      "fileid": "https://r2.ropensci.org/848fba3e1809b91166a0f0e0875085d05dd6bed30e484474553b5f7e9cfac07c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/40755513575"
    }
  ]
}