【问题标题】:Use map inside map?在地图内使用地图?
【发布时间】:2021-12-02 22:59:13
【问题描述】:

我有两个列表:一个包含一些整洁的数据,另一个包含使用 tidymodels 包制作的模型

data_list <- list(train,test)
model_fits <- list(tree,forest,xgb)

我想为每个模型的训练和测试创建一个带有混淆矩阵的新列表。

计算混淆矩阵的函数:

ConfMat <- 
  function(df,data){
    df <- 
    predict(df,new_data = data, type = "class") %>% 
    mutate(truth = data$NetInc) %>% 
    conf_mat(truth,.pred_class)}

我已经尝试过这样做(x,y 是任意的)。:

map(data_list,map(model_fits,ConfMat(x,y)))

我的问题是我不知道如何正确设置“x”和“y”。

PS:双 for 循环有效。我特意要求地图解决方案或同等解决方案。

感谢我能得到的所有帮助!干杯

【问题讨论】:

    标签: list tidyverse


    【解决方案1】:

    使用匿名函数 -

    library(purrr)
    result <- map(data_list,function(x) map(model_fits,function(y) ConfMat(x,y)))
    
    result
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多