Skip to content

v.neighbors

Neighborhood analysis tool for vector point maps.

Makes each cell value a function of the attribute values assigned to the vector points or centroids in a radius around it, and stores new cell values in an output raster map.

v.neighbors input=name [layer=string] output=name method=string size=float [points_column=name] [cats=range] [where=sql_query] [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

v.neighbors input=name output=name method=count size=float

grass.script.run_command("v.neighbors", input, layer="1", output, method="count", size, points_column=None, cats=None, where=None, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("v.neighbors", input="name", output="name", method="count", size=float)

Parameters

input=name [required]
    Name of input vector map
    Or data source for direct OGR access
layer=string
    Layer number or name
    Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.
    Default: 1
output=name [required]
    Name for output raster map
method=string [required]
    Method for aggregate statistics (count if non given)
    Allowed values: count, sum, average, median, mode, minimum, maximum, range, stddev, variance, diversity
    Default: count
size=float [required]
    Neighborhood diameter in map units
points_column=name
    Column name of points map to use for statistics
    Column of points map must be numeric
cats=range
    Category values
    Example: 1,3,7-9,13
where=sql_query
    WHERE conditions of SQL statement without 'where' keyword
    Example: income < 1000 and population >= 10000
--overwrite
    Allow output files to overwrite existing files
--help
    Print usage summary
--verbose
    Verbose module output
--quiet
    Quiet module output
--qq
    Very quiet module output
--ui
    Force launching GUI dialog

input : str, required
    Name of input vector map
    Or data source for direct OGR access
    Used as: input, vector, name
layer : str, optional
    Layer number or name
    Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.
    Used as: input, layer
    Default: 1
output : str, required
    Name for output raster map
    Used as: output, raster, name
method : str, required
    Method for aggregate statistics (count if non given)
    Allowed values: count, sum, average, median, mode, minimum, maximum, range, stddev, variance, diversity
    Default: count
size : float, required
    Neighborhood diameter in map units
points_column : str, optional
    Column name of points map to use for statistics
    Column of points map must be numeric
    Used as: input, dbcolumn, name
cats : str, optional
    Category values
    Example: 1,3,7-9,13
    Used as: input, cats, range
where : str, optional
    WHERE conditions of SQL statement without 'where' keyword
    Example: income < 1000 and population >= 10000
    Used as: input, sql_query, sql_query
overwrite: bool, optional
    Allow output files to overwrite existing files
    Default: False
verbose: bool, optional
    Verbose module output
    Default: False
quiet: bool, optional
    Quiet module output
    Default: False
superquiet: bool, optional
    Very quiet module output
    Default: False

DESCRIPTION

This module makes each cell value a function of the attribute values assigned to the vector points or centroids in an area around the cell with a diameter of size around it, and stores the new cell values in the output raster map layer. By default, the module just counts the number of points. The user can also choose amongst a variety of aggregate statistics using the parameter method. These statistics are calculated on the attributes in the point_column. Using the usual cats and where parameters the user can chose to take only a subset of the points into account.

Note that size is defined as the diameter, and so has to be twice the wanted search radius, and that the module works within the current computational region which can be adjusted using g.region. If the vector map falls completely outside the current region, the module will stop with an error.

EXAMPLE

Count the number of schools for a given grid (North Carolina sample dataset):

g.region vector=schools_wake res=100 -p -a
v.neighbors input=schools_wake output=schools_wake_3000m method=count size=3000

d.mon wx0
d.rast schools_wake_3000m
d.vect schools_wake

The result gives for each grid cell the number of points (here: schools) not farther than 1500 meter away (half of the given size value) from the respective cell center.

Calculate the mean capacity of schools for the same grid:

v.neighbors input=schools_wake output=schools_capacity point_column=CAPACITYTO \
            method=average size=3000

SEE ALSO

r.neighbors, v.vect.stats

AUTHORS

Radim Blazek,
Moritz Lennert

SOURCE CODE

Available at: v.neighbors source code (history)
Latest change: Friday Feb 07 19:16:09 2025 in commit a82a39f