{
  "_id": "6a226fb9cd65a98ecbd48631",
  "Package": "PLUCR",
  "Title": "Policy Learning Under Constraint",
  "Version": "0.1.0",
  "Authors@R": "person(given = \"Laura\",\nfamily = \"Fuentes\",\nrole = c(\"aut\", \"cre\"),\nemail = \"laura.fuentes-vicente@inria.fr\")",
  "Description": "Estimating treatment probabilities that maximize a primary\nclinical outcome while controlling for the occurrence of\nadverse events. The 'PLUCR' package implements methods for\nconstrained policy learning.",
  "License": "AGPL-3",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.2",
  "VignetteBuilder": "knitr",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-06-05 06:39:28 UTC",
    "User": "root"
  },
  "Author": "Laura Fuentes [aut, cre]",
  "Maintainer": "Laura Fuentes <laura.fuentes-vicente@inria.fr>",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-03-30 09:51:20 UTC",
  "RemoteUrl": "https://github.com/cran/PLUCR",
  "RemoteRef": "HEAD",
  "RemoteSha": "f9b6c3fd64bc6416472a0e9a11e84806194225a4",
  "MD5sum": "0f753728e271a952a9e835d21b008183",
  "_user": "cran",
  "_type": "src",
  "_file": "PLUCR_0.1.0.tar.gz",
  "_fileid": "07e04a8e1ebfea134e2e39ef0b22c0e920438a0291bbb6a60e9896cf8b2405fb",
  "_filesize": 300744,
  "_sha256": "07e04a8e1ebfea134e2e39ef0b22c0e920438a0291bbb6a60e9896cf8b2405fb",
  "_created": "2026-06-05T06:39:28.000Z",
  "_published": "2026-06-05T06:42:01.107Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 79677323111,
      "time": 123,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7430423228"
    },
    {
      "job": 79677323121,
      "time": 124,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7430423600"
    },
    {
      "job": 79677001000,
      "time": 163,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7430392928"
    },
    {
      "job": 79677323097,
      "time": 122,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7430422716"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/26999642782",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/cran/PLUCR",
  "_commit": {
    "id": "f9b6c3fd64bc6416472a0e9a11e84806194225a4",
    "author": "Laura Fuentes <laura.fuentes-vicente@inria.fr>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.1.0\n",
    "time": 1774864280
  },
  "_maintainer": {
    "name": "Laura Fuentes",
    "email": "laura.fuentes-vicente@inria.fr"
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "grf",
      "role": "Imports"
    },
    {
      "package": "gridExtra",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "R.utils",
      "role": "Imports"
    },
    {
      "package": "scales",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "SuperLearner",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "tidyselect",
      "role": "Imports"
    },
    {
      "package": "glue",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-14",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.1.0",
      "date": "2026-03-30"
    }
  ],
  "_stars": 0,
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 437,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/PLUCR"
  },
  "_searchresults": 5,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/PLUCR.html",
    "manual.pdf"
  ],
  "_realowner": "cran",
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-03-30"
    }
  ],
  "_exports": [
    "binary_S_p",
    "check_data",
    "delta_mu_constant",
    "delta_mu_linear",
    "delta_mu_mix",
    "delta_mu_null",
    "delta_mu_realistic",
    "delta_mu_threshold",
    "delta_nu_linear",
    "delta_nu_mix",
    "delta_nu_realistic",
    "delta_nu_satisfied",
    "delta_nu_threshold",
    "estimate_mu",
    "estimate_nu",
    "estimate_ps",
    "estimate_real_valued_mu",
    "FW",
    "generate_data",
    "generate_realistic_data",
    "get_opt_beta_lambda",
    "grad_Lagrangian_p",
    "grad_Lagrangian_p_X",
    "HX",
    "Lagrangian_p",
    "learn_threshold",
    "lwr_upper_bound_estimators",
    "main_algorithm",
    "make_psi",
    "model_Xi_linear",
    "model_Xi_mix",
    "model_Xi_realistic",
    "model_Xi_satisfied",
    "model_Xi_threshold",
    "model_Y_constant",
    "model_Y_linear",
    "model_Y_mix",
    "model_Y_null",
    "model_Y_realistic",
    "model_Y_threshold",
    "naive_approach_algorithm",
    "Optimization_Estimation",
    "oracular_approach_algorithm",
    "oracular_process_results",
    "phi",
    "phi_inv",
    "plot_metric_comparison",
    "plot_realistic",
    "process_results",
    "R_p",
    "S_p",
    "SGD",
    "sigma_beta",
    "sigma_beta_prime",
    "SL.grf",
    "synthetic_data_plot",
    "update_mu",
    "update_mu_XA",
    "update_nu",
    "update_nu_XA",
    "V_p",
    "V_Pn",
    "visual_treatment_plot"
  ],
  "_help": [
    {
      "page": "binary_S_p",
      "title": "Constraint function for binary policy",
      "topics": [
        "binary_S_p"
      ]
    },
    {
      "page": "check_data",
      "title": "Check input data for validity",
      "topics": [
        "check_data"
      ]
    },
    {
      "page": "CVFolds",
      "title": "CVFolds (from SuperLearner package)",
      "topics": [
        "CVFolds"
      ]
    },
    {
      "page": "delta_mu_constant",
      "title": "Constant Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_constant"
      ]
    },
    {
      "page": "delta_mu_linear",
      "title": "Linear-shaped Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_linear"
      ]
    },
    {
      "page": "delta_mu_mix",
      "title": "Mixed-shape Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_mix"
      ]
    },
    {
      "page": "delta_mu_null",
      "title": "Null Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_null"
      ]
    },
    {
      "page": "delta_mu_realistic",
      "title": "Realistic Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_realistic"
      ]
    },
    {
      "page": "delta_mu_threshold",
      "title": "Thresholded-shaped Conditional Average Treatment Effect estimator for Y",
      "topics": [
        "delta_mu_threshold"
      ]
    },
    {
      "page": "delta_nu_linear",
      "title": "Linear-shaped Conditional Average Treatment Effect estimator for Xi",
      "topics": [
        "delta_nu_linear"
      ]
    },
    {
      "page": "delta_nu_mix",
      "title": "Mixed-shaped Conditional Average Treatment Effect estimator for Xi",
      "topics": [
        "delta_nu_mix"
      ]
    },
    {
      "page": "delta_nu_realistic",
      "title": "Realistic Conditional Average Treatment Effect estimator for Xi",
      "topics": [
        "delta_nu_realistic"
      ]
    },
    {
      "page": "delta_nu_satisfied",
      "title": "Computes the difference in expected outcomes under treatment and control.",
      "topics": [
        "delta_nu_satisfied"
      ]
    },
    {
      "page": "delta_nu_threshold",
      "title": "Thresholded Conditional Average Treatment Effect estimator for Xi",
      "topics": [
        "delta_nu_threshold"
      ]
    },
    {
      "page": "estimate_mu",
      "title": "Estimate mu",
      "topics": [
        "estimate_mu"
      ]
    },
    {
      "page": "estimate_nu",
      "title": "Estimate nu",
      "topics": [
        "estimate_nu"
      ]
    },
    {
      "page": "estimate_ps",
      "title": "Estimate propensity score",
      "topics": [
        "estimate_ps"
      ]
    },
    {
      "page": "estimate_real_valued_mu",
      "title": "Estimate real-valued mu",
      "topics": [
        "estimate_real_valued_mu"
      ]
    },
    {
      "page": "FW",
      "title": "Frank-Wolfe algorithm",
      "topics": [
        "FW"
      ]
    },
    {
      "page": "generate_data",
      "title": "Synthetic data generator and functions generator",
      "topics": [
        "generate_data"
      ]
    },
    {
      "page": "generate_realistic_data",
      "title": "Realistic synthetic data generator and functions generator",
      "topics": [
        "generate_realistic_data"
      ]
    },
    {
      "page": "get_opt_beta_lambda",
      "title": "Select Optimal Beta and Lambda Combination",
      "topics": [
        "get_opt_beta_lambda"
      ]
    },
    {
      "page": "grad_Lagrangian_p",
      "title": "Gradient of the objective function",
      "topics": [
        "grad_Lagrangian_p",
        "grad_Lagrangian_p_X"
      ]
    },
    {
      "page": "HX",
      "title": "Compute the Inverse Propensity Score Weight (IPW)",
      "topics": [
        "HX"
      ]
    },
    {
      "page": "Lagrangian_p",
      "title": "Objective function taking the form of a Lagrangian",
      "topics": [
        "Lagrangian_p"
      ]
    },
    {
      "page": "learn_threshold",
      "title": "Learn Optimal Decision Threshold",
      "topics": [
        "learn_threshold"
      ]
    },
    {
      "page": "lwr_upper_bound_estimators",
      "title": "Lower and upper bound estimators for policy value and constraint",
      "topics": [
        "lwr_upper_bound_estimators"
      ]
    },
    {
      "page": "main_algorithm",
      "title": "Main algorithm",
      "topics": [
        "main_algorithm"
      ]
    },
    {
      "page": "make_psi",
      "title": "Generate psi function",
      "topics": [
        "make_psi"
      ]
    },
    {
      "page": "model_Xi_linear",
      "title": "Linear treatment effect on Xi Component Function",
      "topics": [
        "model_Xi_linear"
      ]
    },
    {
      "page": "model_Xi_mix",
      "title": "Mixed treatment effect on Xi component function",
      "topics": [
        "model_Xi_mix"
      ]
    },
    {
      "page": "model_Xi_realistic",
      "title": "Realistic treatment effect on Xi Component Function",
      "topics": [
        "model_Xi_realistic"
      ]
    },
    {
      "page": "model_Xi_satisfied",
      "title": "Low treatment effect on Xi",
      "topics": [
        "model_Xi_satisfied"
      ]
    },
    {
      "page": "model_Xi_threshold",
      "title": "Thresholded treatment effect on Xi component function",
      "topics": [
        "model_Xi_threshold"
      ]
    },
    {
      "page": "model_Y_constant",
      "title": "Constant treatment effect on Y component function",
      "topics": [
        "model_Y_constant"
      ]
    },
    {
      "page": "model_Y_linear",
      "title": "Linear treatment effect on Y component function",
      "topics": [
        "model_Y_linear"
      ]
    },
    {
      "page": "model_Y_mix",
      "title": "Mixed treatment effect on Y component function",
      "topics": [
        "model_Y_mix"
      ]
    },
    {
      "page": "model_Y_null",
      "title": "No treatment effect on Y component function",
      "topics": [
        "model_Y_null"
      ]
    },
    {
      "page": "model_Y_realistic",
      "title": "Realistic treatment effect on Y component function",
      "topics": [
        "model_Y_realistic"
      ]
    },
    {
      "page": "model_Y_threshold",
      "title": "Thresholded treatment effect on Y component function",
      "topics": [
        "model_Y_threshold"
      ]
    },
    {
      "page": "naive_approach_algorithm",
      "title": "Naive approach main algorithm",
      "topics": [
        "naive_approach_algorithm"
      ]
    },
    {
      "page": "Optimization_Estimation",
      "title": "Iterative optimization procedure",
      "topics": [
        "Optimization_Estimation"
      ]
    },
    {
      "page": "oracular_approach_algorithm",
      "title": "Oracular approach main algorithm",
      "topics": [
        "oracular_approach_algorithm"
      ]
    },
    {
      "page": "oracular_process_results",
      "title": "Oracular evaluation of a policy",
      "topics": [
        "oracular_process_results"
      ]
    },
    {
      "page": "phi",
      "title": "Normalize a Matrix by Column Min-Max Scaling",
      "topics": [
        "phi"
      ]
    },
    {
      "page": "phi_inv",
      "title": "Inverse Min-Max Normalization",
      "topics": [
        "phi_inv"
      ]
    },
    {
      "page": "plot_metric_comparison",
      "title": "Plot metric values for comparison",
      "topics": [
        "plot_metric_comparison"
      ]
    },
    {
      "page": "plot_realistic",
      "title": "Plot realistic data setting",
      "topics": [
        "plot_realistic"
      ]
    },
    {
      "page": "predict.SL.grf",
      "title": "predict.SL.grf",
      "topics": [
        "predict.SL.grf"
      ]
    },
    {
      "page": "process_results",
      "title": "Evaluate a policy",
      "topics": [
        "process_results"
      ]
    },
    {
      "page": "R_p",
      "title": "Risk function for Conditional Average Treatment Effect (CATE)",
      "topics": [
        "R_p"
      ]
    },
    {
      "page": "S_p",
      "title": "Constraint function",
      "topics": [
        "S_p"
      ]
    },
    {
      "page": "SGD",
      "title": "Stochastic Gradient Descent (SGD) algorithm",
      "topics": [
        "SGD"
      ]
    },
    {
      "page": "sigma_beta",
      "title": "Link function",
      "topics": [
        "sigma_beta"
      ]
    },
    {
      "page": "sigma_beta_prime",
      "title": "Derivative of link function",
      "topics": [
        "sigma_beta_prime"
      ]
    },
    {
      "page": "SL.grf",
      "title": "SL.grf",
      "topics": [
        "SL.grf"
      ]
    },
    {
      "page": "SuperLearner.CV.control",
      "title": "SuperLearner.CV.control (from SuperLearner package)",
      "topics": [
        "SuperLearner.CV.control"
      ]
    },
    {
      "page": "synthetic_data_plot",
      "title": "Plot synthetic data setting",
      "topics": [
        "synthetic_data_plot"
      ]
    },
    {
      "page": "update_mu",
      "title": "Update mu via augmented covariate adjustment",
      "topics": [
        "update_mu"
      ]
    },
    {
      "page": "update_mu_XA",
      "title": "Update mu via augmented covariate adjustment for fixed X",
      "topics": [
        "update_mu_XA"
      ]
    },
    {
      "page": "update_nu",
      "title": "Update nu via augmented covariate adjustment",
      "topics": [
        "update_nu"
      ]
    },
    {
      "page": "update_nu_XA",
      "title": "Update nu via augmented covariate adjustment for fixed X",
      "topics": [
        "update_nu_XA"
      ]
    },
    {
      "page": "V_p",
      "title": "Oracular approximation of value function",
      "topics": [
        "V_p"
      ]
    },
    {
      "page": "V_Pn",
      "title": "Estimation of policy value",
      "topics": [
        "V_Pn"
      ]
    },
    {
      "page": "visual_treatment_plot",
      "title": "Visualize treatment assignment probability",
      "topics": [
        "visual_treatment_plot"
      ]
    }
  ],
  "_rundeps": [
    "bitops",
    "caTools",
    "cli",
    "codetools",
    "cpp11",
    "cvAUC",
    "data.table",
    "DiceKriging",
    "dplyr",
    "farver",
    "foreach",
    "gam",
    "generics",
    "ggplot2",
    "glue",
    "gplots",
    "grf",
    "gridExtra",
    "gtable",
    "gtools",
    "isoband",
    "iterators",
    "KernSmooth",
    "labeling",
    "lattice",
    "lifecycle",
    "lmtest",
    "magrittr",
    "Matrix",
    "nnls",
    "pillar",
    "pkgconfig",
    "purrr",
    "R.methodsS3",
    "R.oo",
    "R.utils",
    "R6",
    "RColorBrewer",
    "Rcpp",
    "RcppEigen",
    "rlang",
    "ROCR",
    "S7",
    "sandwich",
    "scales",
    "stringi",
    "stringr",
    "SuperLearner",
    "tibble",
    "tidyr",
    "tidyselect",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr",
    "zoo"
  ],
  "_vignettes": [
    {
      "source": "PLUCR.Rmd",
      "filename": "PLUCR.html",
      "title": "Introduction to Policy Learning Under Constraint R-package (PLUCR)",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Introduction",
        "2. Getting started",
        "2.1. Installation",
        "2.2. Load required packages and data",
        "2.3. Prepare Variables and Function parameters",
        "2.4. Run the main algorithm",
        "2.5. Other results",
        "2.5.1. Naive approach",
        "2.5.2. Oracular results",
        "3. Play with results",
        "Appendix. Understanding the Algorithm Internally",
        "Preliminary Step: Data Checks and Cross-Fitting Folds",
        "Step 1: Estimate and Save Nuisance Parameters",
        "Step 2: Policy optimization"
      ],
      "created": "2026-03-30 09:51:20",
      "modified": "2026-03-30 09:51:20",
      "commits": 1
    }
  ],
  "_score": 2,
  "_indexed": true,
  "_nocasepkg": "plucr",
  "_universes": [
    "cran"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-06-05T06:41:33.000Z",
      "distro": "noble",
      "commit": "f9b6c3fd64bc6416472a0e9a11e84806194225a4",
      "fileid": "cabe3abb062c73960981bdc90362053d725cd6de657a546b709c5d2e6db76b3d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26999642782"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-06-05T06:41:34.000Z",
      "distro": "noble",
      "commit": "f9b6c3fd64bc6416472a0e9a11e84806194225a4",
      "fileid": "c812e6f7303a478adc49d5fcadd9a6bcce283da3f45a530c08615833f007a069",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26999642782"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.0",
      "date": "2026-06-05T06:41:45.000Z",
      "commit": "f9b6c3fd64bc6416472a0e9a11e84806194225a4",
      "fileid": "443255d654b245b721ba00caaf3b24d9f5402447986d4668c15eb63700fe8709",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26999642782"
    }
  ]
}