RLINE

Fits a line to a set of data points using least squares.

Required Arguments

XDATA — Vector of length NOBS containing the x‑values. (Input)

YDATA — Vector of length NOBS containing the y‑values. (Input)

B0 — Estimated intercept of the fitted line. (Output)

B1 — Estimated slope of the fitted line. (Output)

Optional Arguments

NOBS — Number of observations. (Input)
Default: NOBS = size (XDATA,1).

STAT — Vector of length 12 containing the statistics described below. (Output)

I

STAT(I)

1

Mean of XDATA

2

Mean of YDATA

3

Sample variance of XDATA

4

Sample variance of YDATA

5

Correlation

6

Estimated standard error of B0

7

Estimated standard error of B1

8

Degrees of freedom for regression

9

Sum of squares for regression

10

Degrees of freedom for error

11

Sum of squares for error

12

Number of (x, y) points containing NaN (not a number) as either the x or y value

FORTRAN 90 Interface

Generic: CALL RLINE (XDATA, YDATA, B0, B1 [])

Specific: The specific interface names are S_RLINE and D_RLINE.

FORTRAN 77 Interface

Single: CALL RLINE (NOBS, XDATA, YDATA, B0, B1, STAT)

Double: The double precision name is DRLINE.

Description

Routine RLINE fits a line to a set of (xy) data points using the method of least squares. Draper and Smith (1981, pages 169) discuss the method. The fitted model is

 

where (stored in B0) is the estimated intercept and (stored in B1) is the estimated slope. In addition to the fit, RLINE produces some summary statistics, including the means, sample variances, correlation, and the error (residual) sum of squares. The estimated standard errors of are computed under the simple linear regression model. The errors in the model are assumed to be uncorrelated and with constant variance.

If the x values are all equal, the model is degenerate. In this case, RLINE sets to zero and to the mean of the y values.

Comments

Informational error

 

Type

Code

Description

4

1

Each (x, y) point contains NaN (not a number). There are no valid data.

Example

This example fits a line to a set of data discussed by Draper and Smith (1981, Table 1.1, pages 933). The response y is the amount of steam used per month (in pounds), and the independent variable x is the average atmospheric temperature (in degrees Fahrenheit).

Copy
 
      USE RLINE_INT
      USE UMACH_INT
      USE WRRRL_INT
 
      IMPLICIT   NONE
      INTEGER    NOBS
      PARAMETER  (NOBS=25)
!
      INTEGER    NOUT
      REAL       B0, B1, STAT(12), XDATA(NOBS), YDATA(NOBS)
      CHARACTER  CLABEL(13)*15, RLABEL(1)*4
!
      DATA XDATA/35.3, 29.7, 30.8, 58.8, 61.4, 71.3, 74.4, 76.7, 70.7, &
          57.5, 46.4, 28.9, 28.1, 39.1, 46.8, 48.5, 59.3, 70.0, 70.0, &
          74.5, 72.1, 58.1, 44.6, 33.4, 28.6/
      DATA YDATA/10.98, 11.13, 12.51, 8.4, 9.27, 8.73, 6.36, 8.5, &
          7.82, 9.14, 8.24, 12.19, 11.88, 9.57, 10.94, 9.58, 10.09, &
          8.11, 6.83, 8.88, 7.68, 8.47, 8.86, 10.36, 11.08/
      DATA RLABEL/'NONE'/, CLABEL/' ', 'Mean of X', 'Mean of Y', &
          'Variance X', 'Variance Y', 'Corr.', 'Std. Err. B0', &
          'Std. Err. B1', 'DF Reg.', 'SS Reg.', 'DF Error', &
          'SS Error', 'Pts. with NaN'/
!
      CALL RLINE (XDATA, YDATA, B0, B1, STAT=STAT)
!
      CALL UMACH (2, NOUT)
      WRITE (NOUT,99999) B0, B1
99999 FORMAT (' B0 = ', F7.2, '  B1 = ', F9.5)
      CALL WRRRL ('%/STAT', STAT, RLABEL, CLABEL, 1, 12, 1, &
                  FMT='(12W10.4)')
!
      END

Output

Copy

B0 =   13.62  B1 =  -0.07983
 
                                      STAT
Mean of X   Mean of Y  Variance X  Variance Y       Corr.  Std. Err. B0
     52.6       9.424       298.1       2.659     -0.8452        0.5815
 
Std. Err. B1     DF Reg.     SS Reg.    DF Error    SS Error  Pts. with NaN
     0.01052           1       45.59          23       18.22              0

 

Figure 1,  Plot of the Data and the Least Squares Line