mlr3-编辑`task $ data`

问题描述

是否可以编辑task$data()或用完全相同的姓氏替换为新的data.frame()

我尝试了以下task_train$data() <- newDFtask_train$data <- newDF。它们都分别产生Error in task_train$data() <- di : invalid (NULL) left side of assignmentError in task_train$data <- newDF: cannot change value of locked binding for 'data'

解决方法

创建任务后,应使用pipelines执行所有进一步的数据转换,扩充等操作。这在执行重新采样/调整时特别方便,因为它避免了数据泄漏。

基于@pat-s的评论,这不仅是我的观点,也是mlr核心团队的观点。这就是为什么直接编辑任务数据(以您在问题中显示的方式)失败的原因。