重新标记分类变量是否会改变 partykit 中的条件推理树结果?

问题描述 投票:0回答:1

根据我的分析,我正在使用 中的 函数。我的 ctree 包含所有二进制/分类变量。当我更改二元分类变量的值标签时,我最终得到了不同的 ctree 图。

初始标签

种族化:0 =“非种族”; 1 =“rac”

移民:0 =“非imm”; 1 =“我”

新标签

种族化:0 =“否”; 1 =“是”

移民:0 =“否”; 1 =“是”

我发现这只是当我将标签更改为“是/否”时的问题。我查看了我的代码,没有其他任何改变。我不明白为什么会这样。

我将不胜感激任何帮助/想法。

更新 这是我最初用于“标记”变量的代码的一瞥,这些代码几乎从数字变量变为字符:

data$racialized[data$PP_racialized==0]<- "non-rac"
data$racialized[data$PP_racialized==1]<- "rac" 

data$racialized[data$PP_racialized==0]<- "no"
data$racialized[data$PP_racialized==1]<- "yes" 
#before Ctree analysis 
data <- data %>% dplyr::mutate_if(is.character, factor)

我发现当我使用 apply_labels 函数时,我的结果保持一致,并且在重命名变量时不再出现差异

data=apply_labels(racialized=c("rac"=1, "non-rac"= 0))

data=apply_labels(racialized=c("yes"=1, "no"= 0))
#before ctree analysis
data <- data %>% dplyr::mutate_if(is.numeric, factor)
r plot decision-tree party ctree
1个回答
0
投票

我也有同样的问题。我也无法发布树输出,但会发布我的重命名代码:

set2$MedianAgeClefts <- factor(set2$MedianAgeClefts,
                               levels = c("M1", "M2"),
                               labels = c("Age<=36", "Age>36"))
© www.soinside.com 2019 - 2024. All rights reserved.