TWODSTATS is the jStats module of jLab.

 TWODSTATS  Mean, variance, and covariance of functions of two variables.
    __________________________________________________________________
 
    
    __________________________________________________________________
 
    TWODSTATS computes the first- and second-order statistics of a function
    of two variables in prescribed bins.  This function may either be a 
    scalar-valued or vector-valued quantity at each point. 
  
    An example of a scalar-valued dataset is temperature as a function of
    latitude and longitude. An example of a vector-valued dataset is wind
    or current velocity as a function of latitude and longitude.
 
    TWODSTATS, TWODHIST, and TWODMED are three related functions for 
    computing statistics as a function two variables using very fast
    algorithms that avoid any loops through efficient use of indexing. 
    __________________________________________________________________
   
    Mean and standard deviation of a scalar-valued function 
 
    MZ=TWODSTATS(X,Y,Z,XBIN,YBIN) where X, Y and Z are arrays of the same
    length, forms the mean of Z over the XY plane.  
 
    X and Y must be real-valued, but Z may be complex-valued.
   
    If XBIN and YBIN are length N and M, respectively, then MZ is of 
    size M-1 x N-1.  Bins with no data are assigned a value of NAN.
 
    XBIN and YBIN must be monotonically increasing.
 
    MZ=TWODSTATS(X,Y,Z,N) uses N bins in the X and Y directions, linearly
    spaced between the minimum and maximum values.  MZ is N-1 x N-1.
 
    MZ=TWODSTATS(X,Y,Z,[XMIN XMAX],[YMIN YMAX],N) uses N bins, linearly
    spaced between the designated X and Y values.  MZ is N-1 x N-1. 
 
    X, Y, and Z can also be cell arrays of numerical arrays, in which case 
    all data values are concatented prior to finding the statistics.
    __________________________________________________________________
 
    Additional output
    
    [MZ,XMID,YMID]=TWODSTATS(...) optionally returns the midpoints XMID
    and YMID of the bins.
 
    [MZ,XMID,YMID,NUMZ]=TWODSTATS(...) also returns the number of good
    data points in each of the (X,Y) bins.  NUMZ is the same size as MZ.
 
    [MZ,XMID,YMID,NUMZ,STDZ]=TWODSTATS(...) also returns the standard 
    deviation of Z in the (X,Y) bins.  STDZ is the same size as MZ.
    __________________________________________________________________
   
    Mean and covariance of a vector-valued function 
    
    TWODSTATS can also be used to analyze a function which contains more
    than one value at each (X,Y) point.  
 
    If Z represents a vector with K components, then Z should have the same
    size as X and Y in all but its last dimension, which will be length K.
 
    MZ=TWODSTATS(X,Y,Z,XBIN,YBIN) then returns MZ, containing the mean 
    values of each component of Z in each bin.  If M and N are the lengths 
    of XBIN and YBIN, MZ is of size M-1 x N-1 x K. 
 
    [MZ,XMID,YMID,NUMZ,COVZ]=TWODSTATS(...) returns the full covariance
    matrix COVZ in each of the bins.  As the covariance of Z is K x K, the 
    size of the output matrix COVZ is M-1 x N-1 x K x K.
    __________________________________________________________________
 
    Algorithms
 
    By default, TWODSTATS now works with an internal call to Matlab's
    HISTCOUNTS2 and ACCUMARRAY functions, available as of Matlab 2015b.  
    This is much faster than the previous algorithm.
 
    If HISTCOUNTS2 is not available, TWODSTATS uses loopless algorithm that
    is in turn much faster than an explicit loop.  TWODSTATS(...,'jLab') 
    uses this algorithm, while TWODSTATS(...,'slow') uses the explicit 
    loop.  These options are mostly used for testing purposes.
    __________________________________________________________________
 
    Parallelization
 
    TWODSTATS(...,'parallel') parallelizes the computation using the fast 
    algorithm together with SPMD.  This requires that Matlab's Parallel
    Computing Toolbox be installed.  While TWODSTATS is already very fast,
    parallelization may be useful for extremely large datasets.
    __________________________________________________________________
    
    See also TWODHIST, TWODMED.
 
    'twodstats --t' runs a test.
    'twodstats --f' generates the sample figure shown above.
 
    Usage: mz=twodstats(x,y,z,N);
           mz=twodstats(x,y,z,[xmin xmax],[ymin ymax],N);
           mz=twodstats(x,y,z,xbin,ybin);
           [mz,xmid,ymid]=twodstats(x,y,z,xbin,ybin);
           [mz,xmid,ymid,numz]=twodstats(x,y,z,xbin,ybin);
           [mz,xmid,ymid,numz,stdz]=twodstats(x,y,z,xbin,ybin);
    __________________________________________________________________
    This is part of JLAB --- type 'help jlab' for more information
    (C) 2007--2022 J.M. Lilly --- type 'help jlab_license' for details

contents | allhelp | index