>  Docs Center  >  Libraries  >  ASTROLIB  >  AVG
Libraries

AVG

AVG

Name


      AVG

Purpose


      Return the average value of an array, or 1 dimension of an array

Explanation


      Calculate the average value of an array, or calculate the average
      value over one dimension of an array as a function of all the other
      dimensions.
      In 2009, a DIMENSION keyword was added to the IDL MEAN() function,
      giving it the same capability as AVG(). Thus, the use of AVG() is now
      **deprecated** in favor of the MEAN() function.

Calling Sequence


      RESULT = AVG( ARRAY, [ DIMENSION, /NAN, /DOUBLE ] )

Inputs


      ARRAY = Input array. May be any type except string.

Optional Input Parameters


      DIMENSION = Optional dimension to do average over, integer scalar

Optional Keyword Input


      /NAN - Set this keyword to cause the routine to check for occurrences of
            the IEEE floating-point value NaN in the input data. Elements with
            the value NaN are treated as missing data.
      /DOUBLE - By default, if the input Array is double-precision, complex,
                or double complex, the result is of the same type; 64 bit
                integers are also returned as double. Otherwise the result
                the result is floating-point. Use of the /DOUBLE keyword
                forces a double precision output. Note that internal
                computations are always done in double precision.

Outputs


      The average value of the array when called with one parameter.
      If DIMENSION is passed, then the result is an array with all the
      dimensions of the input array except for the dimension specified,
      each element of which is the average of the corresponding vector
      in the input array.
      For example, if A is an array with dimensions of (3,4,5), then the
      command B = AVG(A,1) is equivalent to
                      B = FLTARR(3,5)
                      FOR J = 0,4 DO BEGIN
                              FOR I = 0,2 DO BEGIN
                                      B[I,J] = TOTAL( A[I,*,J] ) / 4.
                              ENDFOR
                      ENDFOR

Restrictions


      Dimension specified must be valid for the array passed; otherwise the
      input array is returned as the output array.

Procedure


      AVG(ARRAY) = TOTAL(ARRAY, /DOUBLE)/N_ELEMENTS(ARRAY) when called with
      one parameter.

Modification History


      William Thompson Applied Research Corporation
      July, 1986 8201 Corporate Drive
                              Landover, MD 20785
      Converted to Version 2 July, 1990
      Replace SUM call with TOTAL W. Landsman May, 1992
      Converted to IDL V5.0 W. Landsman September 1997
      Added /NAN keyword W. Landsman July 2000
      Accept a scalar input value W. Landsman/jimm@berkeley November 2000
      Internal calculations always in double precision W. Landsman March 2002
      Return NAN if all values in array are NAN W. Landsman April 2002
      Fixed coding bug if all values in array are NAN W. Landsman Jan 2004



© 2024 NV5 Geospatial Solutions, Inc. |  Legal
My Account    |    Contact Us