version 3.21

# Find calibration thresholds

## Description

The purpose of this function is to automatically find calibration thresholds for a numerical causal condition, to be split into separate groups.

## Usage

    findTh(x, n = 1, hclustm = "complete", distm = "euclidean", ...)

## Arguments

`x` |  |  |  | A numerical causal condition.
`n` |  |  |  | The number of thresholds to find.
`hclustm` |  |  |  | The agglomeration (clustering) method to be used.
`distm` |  |  |  | The distance measure to be used.
`...` |  |  |  | Other arguments (mainly for backwards compatibility).

## Details

The process of calibration into crisp sets assumes expert knowledge about the best threshold(s) that separate the raw data into the most meaningful groups.

In the absence of such knowledge, an automatic procedure might help grouping the raw data according to statistical clustering techniques.

The number of groups to split depends on the number of thresholds: one thresholds splits into two groups, two thresholds splits into three groups etc.

For more details about how many groups can be formed with how many thresholds, see `cutree()`

More details about the clustering techniques used in this function are found using `hclust()`, and also more details about different distance measures can be found with `dist()`. This function uses their default values.

## Value

A numeric vector of length `n`.

## Examples

    # hypothetical list of country GDPs, clearly separated
    # into either two or three groups
    gdp <- c(460, 500, 900, 2000, 2100, 2400, 15000, 16000, 20000)

    # find one threshold to separate into two groups
    findTh(gdp)

    [1] 8700

    # find two thresholds to separate into two groups
    findTh(gdp, n = 2)

    [1]  8700 18000

    # using different clustering methods
    findTh(gdp, n = 2, hclustm = "ward.D2", distm = "canberra")

    [1] 1450 8700

## Author

Adrian Dusa

## See also

`cutree`, `hclust`, `dist`