DALEX 错误:贡献错误[nrow(contribution), ] <- cumulative[nrow(contribution), :矩阵上的下标数量不正确

DALEX error : Error in contribution[nrow(contribution), ] <- cumulative[nrow(contribution), : incorrect number of subscripts on matrix

提问人:Soumya Boral 提问时间:11/14/2023 更新时间:11/14/2023 访问量:7

问:

尝试在我的数据上使用 DALEX。在行中出现以下错误pb_h2o_automl <- predict_parts(explainer_h2o_automl,new_observation = new_date_birth,type="break_down")

错误

Error in contribution[nrow(contribution), ] <- cumulative[nrow(contribution),  : 
  incorrect number of subscripts on matrix

法典

rm( list = ls() )

library(DALEX) ; library(h2o) ; library(DALEXtra) ; library(readxl) ; library(dplyr)
set.seed(17)

setwd( 'E:\\projects\\political_analysis' )

df0 = read_excel('training.xlsx')

df0$age = as.numeric( df0$age)

df1 <- df0[c("area", "district", "assembly_constituency", "gender", "age", "party_assembly_election_2018",
             "party_current_year_election", "chief_minister", "leader_vote_for_mla", "benefit_govt_scheme",
             "benefit_current_budget_scheme", "occupation", "education", "social_category", "caste", "caste_other",'party_upcoming_election')]

df1 <- df1 %>% mutate_all(~ifelse(is.na(.), as.character(names(which.max(table(na.omit(.))))), as.character(.))) %>% mutate_at(vars(-age), as.factor)

h2o.init()

target <- "party_upcoming_election"
df <- as.h2o(df1)

model_h2o_automl <- h2o.automl(y = target, training_frame = df, max_models = 5, max_runtime_secs = 600  )

leader_board <- h2o.get_leaderboard(model_h2o_automl)
head(leader_board)

test_df_0 = df1[1,]

explainer_h2o_automl <- DALEXtra::explain_h2o(model = model_h2o_automl, 
                                              data = test_df_0,
                                              y = test_df_0$party_upcoming_election,
                                              label = "h2o automl",
                                              colorize = T)

new_date_birth <- test_df_0 %>% select( - c('party_upcoming_election'))
pb_h2o_automl <- predict_parts(explainer_h2o_automl,new_observation = new_date_birth,type="break_down")

在此处粘贴了前 50 行数据:

https://pastebin.com/C6ETyJbp

R H2O 戴尔克斯

评论


答: 暂无答案