skfolio.cluster.LinkageMethod#
- class skfolio.cluster.LinkageMethod(*values)[source]#
Methods for calculating the distance between clusters in the linkage matrix. See the
Linkage Methodssection ofscipy.cluster.hierarchy.linkagefor full descriptions.- Parameters:
- SINGLEstr
Assigns
\[d(u,v) = \min(dist(u[i],v[j]))\]for all points \(i\) in cluster \(u\) and \(j\) in cluster \(v\). This is also known as the Nearest Point Algorithm.
- COMPLETEstr
Assigns
\[d(u, v) = \max(dist(u[i],v[j]))\]for all points \(i\) in cluster u and \(j\) in cluster \(v\). This is also known by the Farthest Point Algorithm or Voor Hees Algorithm.
- AVERAGEstr
Assigns
\[d(u,v) = \sum_{ij} \frac{d(u[i], v[j])}{(|u|*|v|)}\]for all points \(i\) and \(j\) where \(|u|\) and \(|v|\) are the cardinalities of clusters \(u\) and \(v\), respectively. This is also called the UPGMA algorithm.
- WEIGHTEDstr
Assigns
\[d(u,v) = (dist(s,v) + dist(t,v))/2\]where cluster u was formed with cluster s and t and v is a remaining cluster in the forest (also called WPGMA).
- CENTROIDstr
Assigns
\[dist(s,t) = ||c_s-c_t||_2\]where \(c_s\) and \(c_t\) are the centroids of clusters \(s\) and \(t\), respectively. This is also known as the UPGMC algorithm.
- MEDIANstr
- assigns :math:`d(s,t)` like the ``centroid`` method.
- This is also known as the WPGMC algorithm.
- WARDstr
Uses the Ward variance minimization algorithm. The new entry \(d(u,v)\) is computed as follows,
\[d(u,v) = \sqrt{\frac{|v|+|s|} {T}d(v,s)^2 + \frac{|v|+|t|} {T}d(v,t)^2 - \frac{|v|} {T}d(s,t)^2}\]where \(u\) is the newly joined cluster consisting of clusters \(s\) and \(t\), \(v\) is an unused cluster in the forest, \(T=|v|+|s|+|t|\), and \(|*|\) is the cardinality of its argument. This is also known as the incremental algorithm.
Methods
capitalize(/)Return a capitalized version of the string.
casefold(/)Return a version of the string suitable for caseless comparisons.
center(width[, fillchar])Return a centered string of length width.
countencode(/[, encoding, errors])Encode the string using the codec registered for encoding.
endswithexpandtabs(/[, tabsize])Return a copy where all tab characters are expanded using spaces.
findformat(*args, **kwargs)Return a formatted version of the string, using substitutions from args and kwargs.
format_map(mapping, /)Return a formatted version of the string, using substitutions from mapping.
indexisalnum(/)Return True if the string is an alpha-numeric string, False otherwise.
isalpha(/)Return True if the string is an alphabetic string, False otherwise.
isascii(/)Return True if all characters in the string are ASCII, False otherwise.
isdecimal(/)Return True if the string is a decimal string, False otherwise.
isdigit(/)Return True if the string is a digit string, False otherwise.
isidentifier(/)Return True if the string is a valid Python identifier, False otherwise.
islower(/)Return True if the string is a lowercase string, False otherwise.
isnumeric(/)Return True if the string is a numeric string, False otherwise.
isprintable(/)Return True if all characters in the string are printable, False otherwise.
isspace(/)Return True if the string is a whitespace string, False otherwise.
istitle(/)Return True if the string is a title-cased string, False otherwise.
isupper(/)Return True if the string is an uppercase string, False otherwise.
join(iterable, /)Concatenate any number of strings.
ljust(width[, fillchar])Return a left-justified string of length width.
lower(/)Return a copy of the string converted to lowercase.
lstrip([chars])Return a copy of the string with leading whitespace removed.
maketranspartition(sep, /)Partition the string into three parts using the given separator.
removeprefix(prefix, /)Return a str with the given prefix string removed if present.
removesuffix(suffix, /)Return a str with the given suffix string removed if present.
replace(old, new, /[, count])Return a copy with all occurrences of substring old replaced by new.
rfindrindexrjust(width[, fillchar])Return a right-justified string of length width.
rpartition(sep, /)Partition the string into three parts using the given separator.
rsplit(/[, sep, maxsplit])Return a list of the substrings in the string, using sep as the separator string.
rstrip([chars])Return a copy of the string with trailing whitespace removed.
split(/[, sep, maxsplit])Return a list of the substrings in the string, using sep as the separator string.
splitlines(/[, keepends])Return a list of the lines in the string, breaking at line boundaries.
startswithstrip([chars])Return a copy of the string with leading and trailing whitespace removed.
swapcase(/)Convert uppercase characters to lowercase and lowercase characters to uppercase.
title(/)Return a version of the string where each word is titlecased.
translate(table, /)Replace each character in the string using the given translation table.
upper(/)Return a copy of the string converted to uppercase.
zfill(width, /)Pad a numeric string with zeros on the left, to fill a field of the given width.
- classmethod has(value)#
Check if a value is in the Enum.
- Parameters:
- valuestr
Input value.
- Returns:
- xbool
True if the value is in the Enum, False otherwise.