logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

r.regression.line - Calculates linear regression from two raster maps: y = a + b*x.

Authors

       Dr. Agustin Lobo - alobo at ija.csic.es
       Updated to GRASS 5.7 Michael Barton, Arizona State University
       Script style output Markus Neteler
       Conversion to C module Markus Metz

Description

r.regression.line calculates a linear regression from two raster maps, according to the formula
       y = a + b*x
       where
       x
       y
       represent the input raster maps.

       Optionally, it saves regression coefficients  as  a  ASCII  file.   The  result  includes  the  following
       coefficients:  offset/intercept  (a)  and gain/slope (b), correlation coefficient (R), number of elements
       (N), means (medX, medY), standard deviations (sdX, sdY), and the F test for testing the  significance  of
       the regression model as a whole (F).

Example

       Comparison of two DEMs (SRTM and NED, both at 30m resolution), provided  in  the  North  Carolina  sample
       dataset:
       g.region raster=elev_srtm_30m -p
       r.regression.line mapx=elev_ned_30m mapy=elev_srtm_30m
        y = a + b*x
          a (Offset): -1.659279
          b (Gain): 1.043968
          R (sumXY - sumX*sumY/N): 0.894038
          N (Number of elements): 225000
          F (F-test significance): 896093.366283
          meanX (Mean of map1): 110.307571
          sdX (Standard deviation of map1): 20.311998
          meanY (Mean of map2): 113.498292
          sdY (Standard deviation of map2): 23.718307

       Using the script style flag AND eval to make results available in the shell:
       g.region raster=elev_srtm_30m -p
       eval `r.regression.line -g mapx=elev_ned_30m mapy=elev_srtm_30m`
       # print result stored in respective variables
       echo $a
       -1.659279
       echo $b
       1.043968
       echo $R
       0.894038

Keywords

       raster, statistics, regression

Name

r.regression.line  - Calculates linear regression from two raster maps: y = a + b*x.

Notes

       The  results  for  offset/intercept  (a) and gain/slope (b) are identical to that obtained from R-stats’s
       lm() function.

See Also

d.correlate,r.regression.multi,r.stats

Source Code

       Available at: r.regression.line source code (history)

       Accessed: Friday Apr 04 01:19:28 2025

       Main index | Raster index | Topics index | Keywords index | Graphical index | Full index

       © 2003-2025 GRASS Development Team, GRASS GIS 8.4.1 Reference Manual

GRASS 8.4.1                                                                            r.regression.line(1grass)

Synopsis

r.regression.liner.regression.line--helpr.regression.line   [-g]   mapx=namemapy=name   [output=name]    [--overwrite]   [--help]   [--verbose]
       [--quiet]  [--ui]

   Flags:-g
           Print in shell script style

       --overwrite
           Allow output files to overwrite existing files

       --help
           Print usage summary

       --verbose
           Verbose module output

       --quiet
           Quiet module output

       --ui
           Force launching GUI dialog

   Parameters:mapx=name[required]
           Map for x coefficient

       mapy=name[required]
           Map for y coefficient

       output=name
           ASCII file for storing regression coefficients (output to screen if file not specified).

See Also