extraction: Hypothetical Extraction

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/extraction.R

Description

Computes the hypothetical extraction as outlined in Dietzenbacher et al. (1993) and as outlined in Blar and Miller (2009).

Caution: Inverting large matrices will take a long time. Each individual hypothetical extraction requires the inversion of a matrix. R does a computation roughly every 8e-10 second. The number of computations per matrix inversion is n^3 where n is the dimension of the square matrix. For n = 5000 it should take 100 seconds.

Usage

1
2
extraction(io, ES = NULL, regions = 1, sectors = 1, type = "backward.total",
           aggregate = FALSE, simultaneous = FALSE, normalize = FALSE)

Arguments

io

An InputOutput class object from as.inputoutput

ES

An EasySelect class object from easy.select to specify which region and sector combinations to use.

regions

Character or Integer. Specific regions to be used. Can either be a character that exactly matches the name of the region in RS_label or the number of the region in the order it appears in RS_label.

sectors

Character or Integer. Specific sectors to be used. Can either be a character that exactly matches the name of the sector in RS_label or the number of the sector in the order it RS_label.

type

Character. Any combination of "backward", "forward", "backward.total", and/or "forward.total". See details.

aggregate

TRUE or FALSE. If TRUE produces the value of the impact over all sectors. If FALSE produces the impact for each sector.

simultaneous

TRUE or FALSE. Determines whether to extract all specified regions sequentially or simultaneously.

normalize

TRUE or FALSE. Whether or not to divide each linkage by total production.

Details

type

(1) backward - Calculates the impact of hypothetically extracting the jth region/sector using the formula

X - (I - A_c)^{-1} f

where A_c is the matrix of technical input coefficients with the jth column replaced by zeros

(2)forward - Calculates the impact of hypothetically extracting the jth region/sector using the formula

X - V (I - B_r)^{-1}

where B_r is the matrix of technical output coefficients with the jth row replaced by zeros

(3) backward.total - Calculates the impact of hypothetically extracting the jth region/sector using the formula

X - (I - A_{cr})^{-1} f

where A_{cr} is the matrix of technical input coefficients with the jth column and jth row replaced by zeros except for the diagonal element.

(4) forward.total - Calculates the impact of hypothetically extracting the jth region/sector using the formula

X - V (I - B_{cr})^{-1}

where B_{cr} is the matrix of technical output coefficients with the jth column and jth row replaced by zeros except for the diagonal element.

aggregate

If TRUE multiplies the impact vector by a vector of ones to received the summed value of the impact from hypothetical extraction.

normalize

If TRUE each component in the impact vector is divided by the total output of that sector/region combination.

Value

Produces a list over regions of a list over type of extraction. If there is only one region and one type, then a matrix is returned. For example, items can be called by using extraction$region$type.

Author(s)

John J. P. Wade, Ignacio Sarmiento-Barbieri

References

Dietzenbacher Erik & van der Linden Jan A. & Steenge Alben E. (1993). The Regional Extraction Method: EC Input-Output Comparisons. Economic Systems Research. Vol. 5, Iss. 2, 1993

Blair, P.D. and Miller, R.E. (2009). "Input-Output Analysis: Foundations and Extensions". Cambridge University Press

Nazara, Suahasil & Guo, Dong & Hewings, Geoffrey J.D., & Dridi, Chokri, 2003. "PyIO. Input-Output Analysis with Python". REAL Discussion Paper 03-t-23. University of Illinois at Urbana-Champaign. (http://www.real.illinois.edu/d-paper/03/03-t-23.pdf)

See Also

as.inputoutput, easy.select, linkages, key.sector

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
data(toy.IO)
class(toy.IO)
E1 <- extraction(toy.IO)

# Using an EasySelect object
data(toy.IO)
class(toy.IO)
E2 <- extraction(toy.IO, toy.ES)
E2$Hogwarts

# Using more options
E3 <- extraction(toy.IO, regions = c(1,2), sectors = c("Wii", "Minions"), 
                 type = c("backward", "backward.total"), aggregate = TRUE)
E3$Hogwarts$backward.total

# Multiple regions and types
E4 <- extraction(toy.IO, type = c("forward","forward.total"), normalize = TRUE)
E4$Hogwarts$forward.total

Example output

Loading required package: ggplot2
Loading required package: plot3D
Loading required package: lpSolve
Warning message:
no DISPLAY variable so Tk is not available 
[1] "InputOutput"
[1] "InputOutput"
                          Wii Spaceships Lightsabers
Hogwarts.Pizza       367.8041   366.4898    403.5530
Hogwarts.Wii         702.5231   384.5346    410.0142
Hogwarts.Spaceships  341.2393   689.4143    359.9499
Hogwarts.Lightsabers 585.9798   610.7862    882.4320
Hogwarts.Minions     546.4528   547.5957    582.4964
Narnia.Pizza         477.1353   452.4745    498.7491
Narnia.Wii           413.2719   411.8120    409.4651
Narnia.Spaceships    458.0948   451.5633    486.2146
Narnia.Lightsabers   489.4683   502.0303    529.2053
Narnia.Minions       414.6636   442.2452    422.5196
          Wii  Minions
[1,] 4796.633 4974.076
NULL

ioanalysis documentation built on Jan. 13, 2021, 5:16 p.m.