# FuzzifierDetermination: Determine the optimized fuzzifier for Fuzzy Cluster Method... In bishun945/FCMm: Fuzzy Cluster Method Based on the Optimized m Value (Fuzzifier)

## Description

To determine the optimized fuzzifier value for Fuzzy Cluster Method (FCM)running.

## Usage

 `1` ```FuzzifierDetermination(x, wv, max.m=10, do.stand=TRUE, stand=NULL, dmetric="sqeuclidean") ```

## Arguments

 `x` Data.frame. the input Rrs data `wv` Wavelength of X. If `NULL`, given by colnames of x. `max.m` Set max.m as for determination of m.mub. Default as 10 `do.stand` Whether run standarization for the input data set. Default as `TRUE`. Note that the do.stand only be used for calculating the fuzzifier as both raw and standarzied spectra will be restored in the return value. This is benifit to the spectra plotting. `stand` Deprecated; Now `stand = !do.stand` `dmetric` Distance method. Default as 'sqeuclidean'

## Value

`FD` list contains several result by `FuzzifierDetermination`:

• x The raw input Rrs dataframe with unit sr^-1

• x.stand The standardized Rrs dataframe, if `do.stand=TRUE`

• wv Wavelength with unit nm

• max.m The maximum fuzzifier of FCM as a restriction

• do.stand A logic value for whether we standardized the input data

• dmetric A string value for choosing which distance metric to be used

• Area A numeric vector for trapezoidal integral values

• m.ub The upper boundary of fuzzifier(m) value

• m.used The desired value of fuzzifier(m) value

## References

• Bi S, Li Y, Xu J, et al. Optical classification of inland waters based on an improved Fuzzy C-Means method[J]. Optics Express, 2019, 27(24): 34838-34856.

• Dembele D. Multi-objective optimization for clustering 3-way gene expression data[J]. Advances in Data Analysis and Classification, 2008, 2(3): 211-225.

Other Fuzzy cluster functions: `FCM.new()`, `apply_FCM_m()`, `apply_to_image()`, `cal_memb()`, `generate_param()`, `plot_spec_from_df()`
 ``` 1 2 3 4 5 6 7 8 9 10``` ```library(FCMm) library(magrittr) data("Nechad2015") x <- Nechad2015[,3:11] wv <- gsub("X","",names(x)) %>% as.numeric w <- sample(1:nrow(x), 100) x <- x[w, ] names(x) <- wv set.seed(1234) FD <- FuzzifierDetermination(x, wv, stand=FALSE) ```