This is the core function within the package for areal weighted interpolation. It validates both data sources before interpolating one or more listed values from the source data into the target data.
aw_interpolate(.data, tid, source, sid, weight = "sum", output = "sf", extensive, intensive)
.data | A |
---|---|
tid | A unique identification number within |
source | A |
sid | A unique identification number within |
weight | For |
output | One of either |
extensive | A vector of quoted variable names to be treated as spatially extensive
(e.g. population counts); optional if |
intensive | A vector of quoted variable names to be treated as spatially intensive
(e.g. population density); optional if |
A sf
object or a tibble
with the value or values interpolated into
the target
data.
Areal weighted interpolation can be used for generating demographic estimates for overlapping but incongruent polygon features. It assumes that individual members of a population are evenly dispersed within the source features (an assumption not likely to hold in the real world). It also functions best when data are in a projected coordinate system, like the UTM coordinate system.
aw_interpolate(ar_stl_wards, tid = WARD, source = ar_stl_race, sid = GEOID, weight = "sum", output = "sf", extensive = "TOTAL_E")#> Simple feature collection with 28 features and 4 fields #> geometry type: POLYGON #> dimension: XY #> bbox: xmin: 733361.8 ymin: 4268336 xmax: 746157.7 ymax: 4295504 #> projected CRS: NAD83 / UTM zone 15N #> First 10 features: #> OBJECTID WARD AREA TOTAL_E geometry #> 1 1 1 46138761 7991.565 POLYGON ((740184.2 4286431,... #> 2 2 2 267817711 12145.021 POLYGON ((742392.1 4289178,... #> 3 3 3 66291644 7344.287 POLYGON ((742956.1 4284113,... #> 4 4 4 53210707 8457.672 POLYGON ((739557.6 4284080,... #> 5 5 5 60462396 8783.377 POLYGON ((744883.8 4281632,... #> 6 6 6 64337271 14050.399 POLYGON ((742501.6 4279976,... #> 7 7 7 101268146 15840.086 POLYGON ((745618.6 4279867,... #> 8 8 8 45966410 12188.131 POLYGON ((739842.8 4277724,... #> 9 9 9 73993891 14217.149 POLYGON ((742619.4 4276734,... #> 10 10 10 62915358 11239.213 POLYGON ((737257.7 4277050,...aw_interpolate(ar_stl_wards, tid = WARD, source = ar_stl_asthma, sid = GEOID, weight = "sum", output = "tibble", intensive = "ASTHMA")#> # A tibble: 28 x 4 #> OBJECTID WARD AREA ASTHMA #> <dbl> <int> <dbl> <dbl> #> 1 1 1 46138761. 13.4 #> 2 2 2 267817711. 13.2 #> 3 3 3 66291644. 14.1 #> 4 4 4 53210707. 13.6 #> 5 5 5 60462396. 13.8 #> 6 6 6 64337271. 11.7 #> 7 7 7 101268146. 9.72 #> 8 8 8 45966410. 9.82 #> 9 9 9 73993891. 11.8 #> 10 10 10 62915358. 9.44 #> # … with 18 more rows