{
  "_id": "6a173505acfb0bcc41d9491d",
  "Package": "qch",
  "Title": "Query Composite Hypotheses",
  "Version": "2.1.3",
  "Authors@R": "c(\nperson(\"Tristan\", \"Mary-Huard\", , \"tristan.mary-huard@agroparistech.fr\", role = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0002-3839-9067\")),\nperson(\"Annaig\", \"De Walsche\", , \"annaig.de-walsche@inrae.fr\", role = \"aut\",\ncomment = c(ORCID = \"0000-0003-0603-1716\")),\nperson(\"Franck\", \"Gauthier\", , \"franck.gauthier@inrae.fr\", role = \"ctb\",\ncomment = c(ORCID = \"0000-0003-0574-065X\"))\n)",
  "Author": "Tristan Mary-Huard [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-3839-9067>), Annaig De Walsche\n[aut] (ORCID: <https://orcid.org/0000-0003-0603-1716>), Franck\nGauthier [ctb] (ORCID: <https://orcid.org/0000-0003-0574-065X>)",
  "Maintainer": "Tristan Mary-Huard <tristan.mary-huard@agroparistech.fr>",
  "Description": "Provides functions for the joint analysis of Q sets of\np-values obtained for the same list of items. This joint\nanalysis is performed by querying a composite hypothesis, i.e.\nan arbitrary complex combination of simple hypotheses, as\ndescribed in Mary-Huard et al. (2021)\n<doi:10.1093/bioinformatics/btab592> and De Walsche et\nal.(2025) <doi: 10.1093/nargab/lqaf118>. In this approach, the\nQ-uplet of p-values associated with each item is distributed as\na multivariate mixture, where each of the 2^Q components\ncorresponds to a specific combination of simple hypotheses. The\ndependence between the p-value series is considered using a\nGaussian copula function. A p-value for the composite\nhypothesis test is derived from the posterior probabilities.",
  "License": "GPL-3",
  "biocViews": "",
  "Encoding": "UTF-8",
  "LazyData": "true",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-05-27 18:13:06 UTC",
    "User": "root"
  },
  "RoxygenNote": "7.3.3",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-05-27 16:48:21 UTC",
  "RemoteUrl": "https://github.com/cran/qch",
  "RemoteRef": "HEAD",
  "RemoteSha": "a83f980907989f947612e01086f40bb220abc87d",
  "MD5sum": "cbe9f518875b4c433e4578107d73794f",
  "_user": "cran",
  "_type": "src",
  "_file": "qch_2.1.3.tar.gz",
  "_fileid": "c7bc475620072ad172ed2ece94819ae068bddc7e1763b627e3c036589797ccb9",
  "_filesize": 562904,
  "_sha256": "c7bc475620072ad172ed2ece94819ae068bddc7e1763b627e3c036589797ccb9",
  "_created": "2026-05-27T18:13:06.000Z",
  "_published": "2026-05-27T18:16:37.573Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 78143387440,
      "time": 144,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7248274864"
    },
    {
      "job": 78143387441,
      "time": 154,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7248278753"
    },
    {
      "job": 78143387419,
      "time": 145,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7248275452"
    },
    {
      "job": 78143387474,
      "time": 159,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7248280073"
    },
    {
      "job": 78142867396,
      "time": 171,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7248219894"
    },
    {
      "job": 78143387502,
      "time": 128,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7248268942"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/cran/qch",
  "_commit": {
    "id": "a83f980907989f947612e01086f40bb220abc87d",
    "author": "Tristan Mary-Huard <tristan.mary-huard@agroparistech.fr>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 2.1.3\n",
    "time": 1779900501
  },
  "_maintainer": {
    "name": "Tristan Mary-Huard",
    "email": "tristan.mary-huard@agroparistech.fr",
    "login": "tmaryhuard",
    "description": "",
    "uuid": 71508740,
    "orcid": "0000-0002-3839-9067"
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 2.10",
      "role": "Depends"
    },
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "RcppArmadillo",
      "role": "LinkingTo"
    },
    {
      "package": "copula",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "graphics",
      "role": "Imports"
    },
    {
      "package": "ks",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "Rcpp",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "stringr",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2025-27",
      "n": 1
    },
    {
      "week": "2026-08",
      "n": 1
    },
    {
      "week": "2026-22",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "2.1.0",
      "date": "2025-07-04"
    },
    {
      "name": "2.1.2",
      "date": "2026-02-16"
    },
    {
      "name": "2.1.3",
      "date": "2026-05-27"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "tmaryhuard",
      "count": 5,
      "uuid": 71508740
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 228,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/qch"
  },
  "_searchresults": 6,
  "_topics": [
    "openblas",
    "cpp",
    "openmp"
  ],
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/qch.html",
    "manual.pdf"
  ],
  "_realowner": "tmaryhuard",
  "_cranurl": false,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2021-05-07"
    },
    {
      "version": "2.0.0",
      "date": "2024-03-29"
    },
    {
      "version": "2.1.0",
      "date": "2025-07-04"
    },
    {
      "version": "2.1.2",
      "date": "2026-02-16"
    },
    {
      "version": "2.1.3",
      "date": "2026-05-27"
    }
  ],
  "_exports": [
    "GetH1AtLeast",
    "GetH1Equal",
    "GetHconfig",
    "qch.fit",
    "qch.test"
  ],
  "_datasets": [
    {
      "name": "PvalSets",
      "title": "Synthetic example to illustrate the main qch functions",
      "object": "PvalSets",
      "class": [
        "data.frame"
      ],
      "fields": [
        "Pval1",
        "Pval2",
        "Class"
      ],
      "rows": 10000,
      "table": true,
      "tojson": true
    },
    {
      "name": "PvalSets_cor",
      "title": "Synthetic example to illustrate the main qch functions using Gaussian copula",
      "object": "PvalSets_cor",
      "class": [
        "data.table",
        "data.frame"
      ],
      "fields": [
        "Pval1",
        "Pval2",
        "Class"
      ],
      "rows": 10000,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "Copula.Hconfig_gaussian_density",
      "title": "Gaussian copula density for each H-configuration.",
      "topics": [
        "Copula.Hconfig_gaussian_density"
      ]
    },
    {
      "page": "EM_calibration_gaussian",
      "title": "EM calibration in the case of the Gaussian copula (unsigned)",
      "topics": [
        "EM_calibration_gaussian"
      ]
    },
    {
      "page": "EM_calibration_gaussian_memory",
      "title": "EM calibration in the case of the Gaussian copula (unsigned) with memory management",
      "topics": [
        "EM_calibration_gaussian_memory"
      ]
    },
    {
      "page": "EM_calibration_indep",
      "title": "EM calibration in the case of conditional independence",
      "topics": [
        "EM_calibration_indep"
      ]
    },
    {
      "page": "EM_calibration_indep_memory",
      "title": "EM calibration in the case of conditional independence with memory management (unsigned)",
      "topics": [
        "EM_calibration_indep_memory"
      ]
    },
    {
      "page": "f1_separation_signed",
      "title": "Signed case function: Separate f1 into f+ and f-",
      "topics": [
        "f1_separation_signed"
      ]
    },
    {
      "page": "FastKerFdr_signed",
      "title": "FastKerFdr signed",
      "topics": [
        "FastKerFdr_signed"
      ]
    },
    {
      "page": "FastKerFdr_unsigned",
      "title": "FastKerFdr unsigned",
      "topics": [
        "FastKerFdr_unsigned"
      ]
    },
    {
      "page": "fHconfig_sum_update_gaussian_copula_ptr_parallel",
      "title": "Computation of the sum sum_c(w_c*psi_c) using Gaussian copula parallelized version",
      "topics": [
        "fHconfig_sum_update_gaussian_copula_ptr_parallel"
      ]
    },
    {
      "page": "fHconfig_sum_update_ptr_parallel",
      "title": "Computation of the sum sum_c(w_c*psi_c) parallelized version",
      "topics": [
        "fHconfig_sum_update_ptr_parallel"
      ]
    },
    {
      "page": "gaussian_copula_density",
      "title": "Gaussian copula density",
      "topics": [
        "gaussian_copula_density"
      ]
    },
    {
      "page": "GetH1AtLeast",
      "title": "Specify the configurations corresponding to the composite H_1 test \"AtLeast\".",
      "topics": [
        "GetH1AtLeast"
      ]
    },
    {
      "page": "GetH1Equal",
      "title": "Specify the configurations corresponding to the composite H_1 test \"Equal\".",
      "topics": [
        "GetH1Equal"
      ]
    },
    {
      "page": "GetHconfig",
      "title": "Generate the H_0/H_1 configurations.",
      "topics": [
        "GetHconfig"
      ]
    },
    {
      "page": "last_incomplete_trapezoid_arma",
      "title": "This function is a re-implementation of the initial R loop computing last incomplete trapezoid. See R function integral.kde_adapted().",
      "topics": [
        "last_incomplete_trapezoid_arma"
      ]
    },
    {
      "page": "prior_update_arma_ptr_parallel",
      "title": "Update of the prior estimate in EM algo parallelized version",
      "topics": [
        "prior_update_arma_ptr_parallel"
      ]
    },
    {
      "page": "prior_update_gaussian_copula_ptr_parallel",
      "title": "Update of the prior estimate in EM algo using Gaussian copula, parallelized version",
      "topics": [
        "prior_update_gaussian_copula_ptr_parallel"
      ]
    },
    {
      "page": "PvalSets",
      "title": "Synthetic example to illustrate the main qch functions",
      "topics": [
        "PvalSets"
      ]
    },
    {
      "page": "PvalSets_cor",
      "title": "Synthetic example to illustrate the main qch functions using Gaussian copula",
      "topics": [
        "PvalSets_cor"
      ]
    },
    {
      "page": "qch.fit",
      "title": "Infer posterior probabilities of H_0/H_1 configurations.",
      "topics": [
        "qch.fit"
      ]
    },
    {
      "page": "qch.test",
      "title": "Perform composite hypothesis testing.",
      "topics": [
        "qch.test"
      ]
    },
    {
      "page": "R_MLE_update_gaussian_copula_ptr_parallel",
      "title": "Update the estimate of R correlation matrix of the gaussian copula, parallelized version",
      "topics": [
        "R_MLE_update_gaussian_copula_ptr_parallel"
      ]
    },
    {
      "page": "R.MLE",
      "title": "Gaussian copula correlation matrix Maximum Likelihood estimator.",
      "topics": [
        "R.MLE"
      ]
    },
    {
      "page": "R.MLE.check",
      "title": "Check the Gaussian copula correlation matrix Maximum Likelihood estimator",
      "topics": [
        "R.MLE.check"
      ]
    },
    {
      "page": "R.MLE.memory",
      "title": "Gaussian copula correlation matrix Maximum Likelihood estimator (memory handling)",
      "topics": [
        "R.MLE.memory"
      ]
    },
    {
      "page": "remove_decreasing_values_cpp",
      "title": "Same as function above but does not handle the index ordering of the vector q. Therefore, the 2nd argument order_q has to be an index ordered version of the vector q. Indeed, the R base function: order() is twice as fast as the arma::sort_index(q) This is therefore the recommended function to use.",
      "topics": [
        "remove_decreasing_values_cpp"
      ]
    },
    {
      "page": "remove_decreasing_values_cpp_slow_ordering",
      "title": "This function is a re-implementation of the initial R side while loop. See the end of R function integral.kde_adapted(). As shown in the commentary below, it is twice as slow to handle the index ordering of the vector q (2nd argument) here with the function arma::sort_index(). Consequently, it is recommended to use the function remove_decreasing_values_cpp() instead.",
      "topics": [
        "remove_decreasing_values_cpp_slow_ordering"
      ]
    }
  ],
  "_rundeps": [
    "ADGofTest",
    "cli",
    "cluster",
    "colorspace",
    "copula",
    "dplyr",
    "FNN",
    "generics",
    "glue",
    "gsl",
    "kernlab",
    "KernSmooth",
    "ks",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "mclust",
    "mgcv",
    "multicool",
    "mvtnorm",
    "nlme",
    "numDeriv",
    "pcaPP",
    "pillar",
    "pkgconfig",
    "pracma",
    "pspline",
    "purrr",
    "R6",
    "Rcpp",
    "RcppArmadillo",
    "rlang",
    "stabledist",
    "stringi",
    "stringr",
    "tibble",
    "tidyselect",
    "utf8",
    "vctrs",
    "withr"
  ],
  "_sysdeps": [
    {
      "shlib": "liblapack",
      "package": "libopenblas0-pthread",
      "source": "openblas",
      "version": "0.3.26+ds-1ubuntu0.1",
      "name": "openblas",
      "homepage": "https://www.openblas.net/",
      "description": "Optimized BLAS (linear algebra) library (shared lib, pthread)"
    },
    {
      "shlib": "libblas",
      "package": "libopenblas0-pthread",
      "source": "openblas",
      "version": "0.3.26+ds-1ubuntu0.1",
      "name": "openblas",
      "homepage": "https://www.openblas.net/",
      "description": "Optimized BLAS (linear algebra) library (shared lib, pthread)"
    },
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    },
    {
      "shlib": "libgomp",
      "package": "libgomp1",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "openmp",
      "homepage": "http://gcc.gnu.org/",
      "description": "GCC OpenMP (GOMP) support library"
    }
  ],
  "_score": 1.4771212547196624,
  "_indexed": false,
  "_nocasepkg": "qch",
  "_universes": [
    "cran"
  ],
  "_indexurl": "https://tmaryhuard.r-universe.dev/qch",
  "_previous": "2.1.2",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "2.1.3",
      "date": "2026-05-27T18:15:20.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "a83f980907989f947612e01086f40bb220abc87d",
      "fileid": "a9fd5404adaa0993d08d1f55c4c41324c1fa282736df9473448be420c5bceaf7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "2.1.3",
      "date": "2026-05-27T18:15:24.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "a83f980907989f947612e01086f40bb220abc87d",
      "fileid": "a2833bd1ab7020b6a7c7622edbb14f64c0f2875b8af7dd5167c5fc04202dd763",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "2.1.3",
      "date": "2026-05-27T18:15:21.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "a83f980907989f947612e01086f40bb220abc87d",
      "fileid": "4b110bef60fdc32ffa802f7d9983b7fda421c25bc6ca705e41773d85ae179841",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "2.1.3",
      "date": "2026-05-27T18:15:27.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "a83f980907989f947612e01086f40bb220abc87d",
      "fileid": "1fbb50a6097431eca35bb6d156ea44d57777c54ee4b2cc8db6936cfeac0837ab",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "2.1.3",
      "date": "2026-05-27T18:15:37.000Z",
      "arch": "emscripten",
      "commit": "a83f980907989f947612e01086f40bb220abc87d",
      "fileid": "d30699a75349bfc7ce825376f733cb0901453eb81b61242af28ecb44179601a8",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/26529279938"
    }
  ]
}