Set an Answer and Confidence for a Leaf Node
set_answer.Rd
This is the primary function for providing evidence to the tree. It finds a
specific leaf node by its name and updates its answer
and confidence
attributes based on user input.
Arguments
- tree
The
data.tree
object to be modified.- node_name
A character string specifying the
name
of the leaf node to update.- response
A logical value,
TRUE
orFALSE
, representing the answer.- confidence_level
A numeric value from 0 to 5 representing the user's confidence in the answer. Confidence levels are semi-quantitative and map to the following probabilities:
0 : 50%
1 : 60%
2 : 70%
3 : 80%
4 : 90%
5 : 100%
- verbose
An optional logical value controlling output. Default is TRUE.
Details
The function takes a 0-5 confidence level from the user and converts it to an
internal score between 0.5 (uncertain) and 1.0 (certain) using the formula:
score = 0.5 + (confidence_level / 10)
.
It includes validation to ensure the target node exists, is a leaf, and that the provided response is a valid logical value. A confirmation message is printed to the console upon successful update.
Examples
# Load a tree
ethical_tree <- load_tree_df(ethical)
# View the tree
print_tree(ethical_tree)
#> Tree Rule Answer Confidence
#> Invest in Company X AND
#> |-- Financial Viability AND
#> | |-- Profitability and Growth Signals OR
#> | | |-- FIN1
#> | | |-- FIN2
#> | | `-- FIN3
#> | `-- Solvency and Stability AND
#> | |-- FIN4
#> | `-- FIN5
#> |-- Acceptable Environmental Stewardship OR
#> | |-- Has a Clean Current Record AND
#> | | |-- ENV1
#> | | |-- ENV2
#> | | `-- ENV3
#> | `-- Has a Credible Transition Pathway OR
#> | |-- ENV4
#> | |-- ENV5
#> | `-- ENV6
#> |-- Demonstrable Social Responsibility OR
#> | |-- Shows Excellent Internal Culture OR
#> | | |-- SOC1
#> | | |-- SOC2
#> | | |-- SOC3
#> | | `-- SOC4
#> | `-- Has a Positive External Impact AND
#> | |-- SOC5
#> | |-- SOC6
#> | `-- SOC7
#> `-- Strong Corporate Governance AND
#> |-- GOV1
#> |-- GOV2
#> |-- GOV3
#> |-- GOV4
#> `-- GOV5
# Set an answer for leaf 'A1'
ethical_tree <- set_answer(ethical_tree, "FIN2", TRUE, 3)
#> Answer for leaf 'FIN2' set to: TRUE with confidence 3/5
print_tree(ethical_tree)
#> Tree Rule Answer Confidence
#> Invest in Company X AND
#> |-- Financial Viability AND
#> | |-- Profitability and Growth Signals OR
#> | | |-- FIN1
#> | | |-- FIN2 TRUE 3
#> | | `-- FIN3
#> | `-- Solvency and Stability AND
#> | |-- FIN4
#> | `-- FIN5
#> |-- Acceptable Environmental Stewardship OR
#> | |-- Has a Clean Current Record AND
#> | | |-- ENV1
#> | | |-- ENV2
#> | | `-- ENV3
#> | `-- Has a Credible Transition Pathway OR
#> | |-- ENV4
#> | |-- ENV5
#> | `-- ENV6
#> |-- Demonstrable Social Responsibility OR
#> | |-- Shows Excellent Internal Culture OR
#> | | |-- SOC1
#> | | |-- SOC2
#> | | |-- SOC3
#> | | `-- SOC4
#> | `-- Has a Positive External Impact AND
#> | |-- SOC5
#> | |-- SOC6
#> | `-- SOC7
#> `-- Strong Corporate Governance AND
#> |-- GOV1
#> |-- GOV2
#> |-- GOV3
#> |-- GOV4
#> `-- GOV5