## Description

Calculates backward and forward linkages with an option to normalize values. Can calculate total and direct linkages. If the data is multiregional, intraregional and interregional linkages can be calculated. Can also be used on a specified subset of all regions.

## Usage

 1 2 linkages(io, ES = NULL, regions = "all", sectors = "all", type = c("total"), normalize = FALSE, intra.inter = FALSE) 

## Arguments

 io An object of class InputOutput calculated from as.inputoutput. ES An object of class EasySelect from easy.select 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. Identifying the type of backward and forward linkages to be calculated. Options are "total" and "direct". normalize Logical. Identifying whether or not to calculate normalized or raw linkages. Default is TRUE intra.inter Logical. Only applies to multiregional systems. Determines whether or not to calculate intraregional and interregional backward and forward linkages in addition to aggregate linkages.

## Details

There are arguments for type of linkages, normalized linkages, and intra.inter linkages. Let (r) denote the dimension of the block in the transaction matrix of the region of interest and (s) denote the dimension of the rest. If there are (n) sectors and (m) regions then r = n and s = (m - 1)*s

type: For the following types, if normalize = TRUE then the calculation takes the specified form below. Otherwise if normalize = FALSE then the denominator is removed:

"total" caclculates the total backward and forward linkages. For backward linkages, this is the column sum of the Leontief inverse.

BL_{j}=\frac{∑_{i=1}^{n}l_{ij}}{\frac{1}{n} ∑_{j=1}^{n}∑_{i=1}^{n}l_{ij}}

For forward linkages, this is the row sum of the Goshian inverse.

FL_{i}=\frac{\frac{1}{n}∑_{j=1}^{n}g_{ij}}{\frac{1}{n^{2}}∑_{j=1}^{n}∑_{i=1}^{n}g_{ij}}

"direct" calculates the direct backward and forward linkages. For backward linkages, this is the column sum of the input matrix of technical coefficients (A):

BL_{j}=\frac{∑_{i=1}^{n}a_{ij}}{\frac{1}{n} ∑_{j=1}^{n}∑_{i=1}^{n}a_{ij}}

For forward linkages, this is the row sum of the output matrix of technical coefficients (B):

FL_{i}=\frac{\frac{1}{n}∑_{j=1}^{n}b_{ij}}{\frac{1}{n^{2}}∑_{j=1}^{n}∑_{i=1}^{n}b_{ij}}

intra.inter: This calculates the intraregional, interregional and aggregate backward and forward linkages. If intra.inter = FALSE, then only calculates the aggregate. If normalize = FALSE then the aggregate linkage is equivalent to the sum of the intraregional and interregional linkages. If normalize = TRUE, then this is not the case. Note that normalizing adds the denominator to the following equations. Using matrix notation we have

BL.intra = \frac{1_r^\prime J_{rr}}{ \frac{1}{n*m} 1_r^\prime J_{rr} 1_r}

FL.intra = \frac{ J_{rr} 1_r}{ \frac{1}{n*m} 1_r^\prime J_{rr} 1_r}

BL.inter = \frac{1_s^\prime J_{sr}}{\frac{1}{n*m} 1_s J_{sr} 1_r }

FL.inter = \frac{J_{rs} 1_s}{\frac{1}{n*m} 1_r J_{rs} 1_s}

BL.agg = \frac{ 1 J_{.r}}{\frac{1}{n*m} 1 J_{.r} 1_r}

FL.agg = \frac{ J_{r.} 1}{\frac{1}{n*m} 1_r J_{r.}} 1

## Value

Returns a data.frame. The following are assigned to the column names to help identify which column is belongs to which. The first element of the column label is the region of interest, grabbed from RS_label.

 .BL Backward linkages .FL Forward linkages .intra Intraregional linkages .inter Interregional linkages .agg Aggregate linkages .tot Total linkages .dir Direct linkages

## Author(s)

John J. P. Wade, Ignacio Sarmiento-Barbieri

## References

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)

leontief.inv, ghosh.inv, key.sector
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 data(toy.IO) class(toy.IO) link1 <- linkages(toy.IO) link1\$Hogwarts data(toy.ES) class(toy.ES) link2 <- linkages(toy.IO, toy.ES) link2 # More detailed link3 <- linkages(toy.IO, regions = "Narnia", sectors = c("Wii","Pizza"), type = c("total", "direct"), normalize = FALSE, intra.inter = TRUE) link3 link4 <- linkages(toy.IO, regions = 1:2, sectors = c(1:3,5)) link4