Learn R Programming

REAT (version 3.0.3)

hansen: Hansen accessibility

Description

Calculating the Hansen accessibility for given origins and destinations

Usage

hansen(od_dataset, origins, destinations, attrac, dist, gamma = 1, lambda = -2, 
atype = "pow", dtype = "pow", gamma2 = NULL, lambda2 = NULL, dist_const = 0, 
dist_max = NULL, extract_local = FALSE, accnorm = FALSE, check_df = TRUE,
print.results = TRUE)

Arguments

od_dataset

an interaction matrix which is a data.frame containing the origins, destinations, the distances between them and a size variable for the opportunities of the destinations

origins

the column in the interaction matrix od_dataset containing the origins

destinations

the column in the interaction matrix od_dataset containing the destinations

attrac

the column in the interaction matrix od_dataset containing the "attractivity" variable of the destinations (e.g. no. of opportunities)

dist

the column in the interaction matrix od_dataset containing the transport costs (e.g. travelling time, distance)

gamma

a single numeric value for the exponential weighting (\(\gamma\)) of size (default: 1)

lambda

a single numeric value for the exponential weighting (\(\lambda\)) of distance (transport costs, default: -2)

atype

Type of attractivity weighting function: atype = "pow" (power function), atype = "exp" (exponential function) or atype = "logistic" (default: atype = "pow")

dtype

Type of distance weighting function: dtype = "pow" (power function), dtype = "exp" (exponential function) or dtype = "logistic" (default: dtype = "pow")

gamma2

if atype = "logistic" a second \(\gamma\) parameter is needed

lambda2

if dtype = "logistic" a second \(\lambda\) parameter is needed

dist_const

a numeric value of a constant to be added to the transport costs (e.g. 1)

dist_max

a numeric value of a maximal value of transport costs for the opportunities to be recognized

extract_local

logical argument that indicates if the start points should be included in the analysis or not (if \(i=j\)). Default value: extract_local = FALSE

accnorm

logical argument that indicates if the Hansen accessibility should be standardized

check_df

logical argument that indicates if the given dataset is checked for correct input, only for internal use, should not be deselected (default: TRUE)

print.results

logical argument that indicates if the results are shown (default: TRUE)

Value

A list containing the following objects:

origins

A data frame containing the origins

accessibility

A data frame containing the calculatedaccessibility values (optional: standardized accessibilities)

Details

Accessibility and the inhibiting effect of transport costs on spatial interactions belong to the key concepts of economic geography (Aoyama et al. 2011). The Hansen accessibility (Hansen 1959) can be regarded as a potential model of spatial interaction that describes accessibility as the sum of all opportunities \(O\) in the regions \(j\), \(O_{j}\), weighted by distance or other types of transport costs from the origins, \(i\), to them, \(d_{ij}\): \(A_{i} = \sum_{j}{O_{j} f(d_{ij})}\). The distance/travel time is weighted by a distance decay function (\(f(d_{ij})\)) to reflect the disutility (opportunity costs) of distance. From a microeconomic perspective, the accessibility of a region or zone can be seen as the sum of all utilities of every opportunity outgoing from given starting points, given an utility function containing the opportunities (utility) and transport costs (disutility) (Orpana/Lampinen 2003). As the accessibility model originally comes from urban land use theory, it can also be used to model spatial concentration/agglomeration, e.g. to quantify the rate of agglomeration of retail locations (Orpana/Lampinen 2003, Wieland 2015).

Originally the weighting function of distance is not explicitly stated and the "attractivities" (e.g. size of the activity at the destinations) is not weighted. These specifications are relaxed is this function, so both variables can be weighted by a power, exponential or logistic function. If accnorm = TRUE, the Hansen accessibility is standardized by weighting the non-standardized values by the sum of all opportunities without regarding transport costs; the standardized Hansen accessibility has a range between 0 and 1.

References

Aoyama, Y./Murphy, J. T./Hanson, S. (2011): “Key Concepts in Economic Geography”. London : SAGE.

Hansen, W. G. (1959): “How Accessibility Shapes Land Use”. In: Journal of the American Institute of Planners, 25, 2, p. 73-76.

Orpana, T./Lampinen, J. (2003): “Building spatial choice models from aggregate data”. In: Journal of Regional Science, 43, 2, p. 319-347.

Wieland, T. (2015): “Raeumliches Einkaufsverhalten und Standortpolitik im Einzelhandel unter Beruecksichtigung von Agglomerationseffekten. Theoretische Erklaerungsansaetze, modellanalytische Zugaenge und eine empirisch-oekonometrische Marktgebietsanalyse anhand eines Fallbeispiels aus dem laendlichen Raum Ostwestfalens/Suedniedersachsens”. Geographische Handelsforschung, 23. 289 pages. Mannheim : MetaGIS.

See Also

converse, dist.calc, dist.mat, dist.buf, huff, reilly

Examples

Run this code
# NOT RUN {
# Example from Levy/Weitz (2009):
# Data for the existing and the new location
locations <- c("Existing Store", "New Store")
S_j <- c(5000, 10000)
location_data <- data.frame(locations, S_j)
# Data for the two communities (Rock Creek and Oak Hammock)
communities <- c("Rock Creek", "Oak Hammock")
C_i <- c(5000000, 3000000)
community_data <- data.frame(communities, C_i)
# Combining location and submarket data in the interaction matrix
interactionmatrix <- merge (community_data, location_data)
# Adding driving time:
interactionmatrix[1,5] <- 10
interactionmatrix[2,5] <- 5
interactionmatrix[3,5] <- 5
interactionmatrix[4,5] <- 15
colnames(interactionmatrix) <- c("communities", "C_i", "locations", "S_j", "d_ij")
shoppingcenters1 <- interactionmatrix
huff_shares <- huff(shoppingcenters1, "communities", "locations", "S_j", "d_ij")
# Market shares of the new location:
huff_shares$ijmatrix[huff_shares$ijmatrix$locations == "New Store",]
# Hansen accessibility for Oak Hammock and Rock Creek:
# hansen (huff_shares$ijmatrix, "communities", "locations", "S_j", "d_ij")
# }

Run the code above in your browser using DataLab