Learn R Programming

fso (version 2.1-2)

mfso: Multidimensional Fuzzy Set Ordination

Description

A multidimensional extension of fuzzy set ordination (FSO) that constructs a multidimensional ordination by mapping samples from fuzzy topological space to Euclidean space for statistical analysis. MFSO can be used in exploratory or testing modes.

Usage

# S3 method for formula
mfso(formula,dis,data,permute=FALSE,lm=TRUE,scaling=1,...)
# S3 method for default
mfso(x,dis,permute=FALSE,scaling=1,lm=TRUE,notmis=NULL,...)
# S3 method for mfso
summary(object,...)

Value

an object of class ‘mfso’ with components:

mu

a matrix of fuzzy set memberships of samples, analogous to the coordinates of the samples along the axes, one column for each axis

data

a dataframe containing the independent variables as columns

r

a vector of correlation coefficients, one for each axis in order

p

a vector of probabilities of observing correlations as high as observed

var

a vector of variables names used in fitting the model

gamma

a vector of the fraction of variance for an axis that is independent of all previous axes

Arguments

formula

Model formula, with no left hand side. Right hand side gives the independent variables to use in fitting the model

dis

a dist object of class ‘dist’ returned from dist, ‘vegdist’, or dsvdis

data

a data frame containing the variables specified in the formula

permute

a switch to control how the probability of correlations is calculated. permute=FALSE (the default) uses a parametric Z distribution approximation; permute=n permutes the independent variables (permute-1) times and estimates the probability as (m+1)/(permute) where m is the number of permuted correlations greater than or equal to the observed correlation.

lm

a switch to control scaling of axes after the first axis. If lm=TRUE (the default) each axis is constructed independently, and then subjected to a Gram-Schmidt orthogonalization to all previous axes to preserve only the the variability that is uncorrelated with all previous axes. If lm=FALSE, the full extent of all axes is preserved without correcting for correlation with previous axes.

scaling

a switch to control how the initial fuzzy set axes are scaled: 1 = use raw \(\mu\) membership values, 2 = relativize \(\mu\) values [0,1], 3 = relativize \(\mu\) values [0,1] and multiply by respective correlation coefficient.

x

a quantitative matrix or dataframe. One axis will be fit for each column

notmis

a vector passed from the formula version of mfso to control for missing values in the data

object

an object of class ‘mfso’

...

generic arguments for future use

Author

David W. Roberts droberts@montana.edu

Details

mfso performs individual fso calculations on each column of a data frame or matrix, and then combines those fso axes into a higher dimensional object. The algorithm of fuzzy set ordination is described in the help file for fso. The key element in mfso is the Gram-Schmidt orthogonalization, which ensures that each axis is independent of all previous axes. In practice, each axis is regressed against all previous axes, and the residuals are retained as the result.

References

Roberts, D.W. 2007. Statistical analysis of multidimensional fuzzy set ordinations. Ecology 89:1246-1260.

Roberts, D.W. 2009. Comparison of multidimensional fuzzy set ordination with CCA and DB- RDA. Ecology. 90:2622-2634.

Examples

Run this code
    require(labdsv)
    data(bryceveg) # returns a vegetation dataframe
    data(brycesite) # returns a dataframe of environmental variables
    dis.bc <- dsvdis(bryceveg,'bray/curtis')
                  # returns an object of class sQuote{dist}
    demo.mfso <- mfso(~elev+slope+av,dis.bc,data=brycesite) # creates the mfso
    summary(demo.mfso)
    if (FALSE) plot(demo.mfso)

Run the code above in your browser using DataLab