VPSPulse Mirrors

High-Performance Open-Source Archive

README

CRAN status Travis build status Codecov test coverage

ipfr

A package for iterative proportional fitting on multiple marginal distributions in R. The goal of this package is to make survey raking, matrix balancing, and population synthesis easier.

Installation

Install the latest official version from CRAN:

install.packages("ipfr")

Install the development version of the package:

library(devtools)
install_github("dkyleward/ipfr", build_vignettes = TRUE)

Basic Usage

(See vignettes at the bottom for advanced topics.)

A basic matrix balance task:

mtx <- matrix(data = runif(9), nrow = 3, ncol = 3)
row_targets <- c(3, 4, 5)
column_targets <- c(5, 4, 3)
result <- ipu_matrix(mtx, row_targets, column_targets)

A basic survey balance task:

survey <- tibble(
  size = c(1, 2, 1, 1),
  autos = c(0, 2, 2, 1),
  weight = 1
)
targets <- list()
targets$size <- tibble(
  `1` = 75,
  `2` = 25
)
targets$autos <- tibble(
  `0` = 25,
  `1` = 50,
  `2` = 25
)
result <- ipu(survey, targets)

Creating synthetic households from the ipu() result:

synthesize(result$weight_tbl)

Vignettes

Using ipfr: https://cran.r-project.org/web/packages/ipfr/vignettes/using_ipfr.html
Common ipf problems: https://cran.r-project.org/web/packages/ipfr/vignettes/common_ipf_problems.html

Need mirroring services?
Contact our team at info@vpspulse.com.

Mirror powered by VPSpulse

Infrastructure sponsored by VPSPulse & Secure Payments by ArionPay.