popinf

Assumption-Lean and Data-Adaptive Post-Prediction Inference

https://github.com/qlu-lab/popinf

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, medrxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Assumption-Lean and Data-Adaptive Post-Prediction Inference

Basic Info
  • Host: GitHub
  • Owner: qlu-lab
  • License: gpl-3.0
  • Language: R
  • Default Branch: main
  • Homepage:
  • Size: 52.7 KB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License

README.md

POP-Inf

This repository hosts the R package that implements the POP-Inf method described in the paper: Assumption-lean and data-adaptive post-prediction inference.

POP-Inf provides valid and powerful inference based on ML predictions for parameters defined through estimation equations.

Installation

```

install.packages("devtools")

devtools::install_github("qlu-lab/POPInf") ```

Useful examples

Here are examples of POP-Inf for M-estimation tasks including: mean estimation, linear regression, logistic regression, and Poisson regrssion. The main function is pop_M(), where the argument method indicates which task to do.

```

Load the package

library(POPInf)

Load the simulated data

set.seed(999) data <- simdatay() Xlab = data$Xlab ## Covariates in the labeled data Xunlab = data$Xunlab ## Covariates in the unlabeled data Ylab = data$Ylab ## Observed outcome in the labeled data Yhatlab = data$Yhatlab ## Predicted outcome in the labeled data Yhatunlab = data$Yhatunlab ## Predicted outcome in the unlabeled data ``````

Mean estimation

```

Run POP-Inf mean estimation

fitmean <- popM(Ylab = Ylab, Yhatlab = Yhatlab, Yhatunlab = Yhatunlab, alpha = 0.05, method = "mean")

print(fit_mean)

Estimate Std.Error Lower.CI Upper.CI P.value Weight

1 3.505484 0.05720132 3.393371 3.617596 0 0.9044718

```

Linear regression

```

Run POP-Inf linear regression

fitols <- popM(Xlab = Xlab, Xunlab = Xunlab, Ylab = Ylab, Yhatlab = Yhatlab, Yhatunlab = Yhatunlab, alpha = 0.05, method = "ols")

print(fit_ols)

Estimate Std.Error Lower.CI Upper.CI P.value Weight

3.5089480 0.05591387 3.3993588 3.618537 0.000000e+00 0.8611889

X1 0.8980173 0.08565766 0.7301313 1.065903 1.025461e-25 1.0000000

```

Logistic regression

```

Load the simulated data

set.seed(999) data <- simdatay(binary = T) Xlab = data$Xlab Xunlab = data$Xunlab Ylab = data$Ylab Yhatlab = data$Yhatlab Yhatunlab = data$Yhatunlab

Run POP-Inf logistic regression

fitlogistic <- popM(Xlab = Xlab, Xunlab = Xunlab, Ylab = Ylab, Yhatlab = Yhatlab, Yhatunlab = Yhatunlab, alpha = 0.05, method = "logistic")

print(fit_logistic)

Estimate Std.Error Lower.CI Upper.CI P.value Weight

-0.1289001 0.08347881 -0.2925156 0.03471532 1.225626e-01 0.4290559

X1 0.5749601 0.08653142 0.4053617 0.74455861 3.041970e-11 0.5337078

```

Poisson regression

```

Load the simulated data

set.seed(999) data <- simdatay() Xlab = data$Xlab Xunlab = data$Xunlab Ylab = round(data$Ylab - min(data$Ylab)) Yhatlab = round(data$Yhatlab - min(data$Yhatlab)) Yhatunlab = round(data$Yhatunlab - min(Yhat_unlab))

Run POP-Inf Poisson regression

fitpoisson <- popM(Xlab = Xlab, Xunlab = Xunlab, Ylab = Ylab, Yhatlab = Yhatlab, Yhatunlab = Yhatunlab, alpha = 0.05, method = "poisson")

print(fit_poisson)

Estimate Std.Error Lower.CI Upper.CI P.value Weight

0.9732937 0.02261537 0.9289684 1.0176191 0.000000e+00 0.8392517

X1 0.3188511 0.03125507 0.2575923 0.3801099 1.950752e-24 0.8303991

```

Analysis script

We provide the script for analysis in the POP-Inf paper here.

Contact

Please submit an issue or contact Jiacheng (jiacheng.miao@wisc.edu) or Xinran (xinran.miao@wisc.edu) for questions.

Reference

Assumption-lean and Data-adaptive Post-Prediction Inference

Valid inference for machine learning-assisted GWAS

"POP" familial links

  • POP-TOOLS (POst-Prediction TOOLS) is a toolkit for conducting valid and powerful machine learning (ML)-assisted genetic association studies. It currently implements
    • POP-GWAS, where statistical and computational methods are optimized for GWAS applications.

Owner

  • Login: qlu-lab
  • Kind: user
  • Location: Madison, WI
  • Company: UW-Madison

Lu Laboratory of Statistical Genetics at University of Wisconsin-Madison

GitHub Events

Total
Last Year

Packages

  • Total packages: 1
  • Total downloads:
    • cran 166 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
  • Total maintainers: 1
cran.r-project.org: POPInf

Assumption-Lean and Data-Adaptive Post-Prediction Inference

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 166 Last month
Rankings
Dependent packages count: 28.2%
Dependent repos count: 36.1%
Average: 49.7%
Downloads: 84.7%
Maintainers (1)
Last synced: 11 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.5.0 depends
  • MASS * imports
  • randomForest * imports