mlr3 - 如何使用 `mlr3` 接口删除不完整的观察结果
mlr3 - how to remove incomplete observations using `mlr3` interface
是否可以使用 mlr3
过滤器或 pipeops 删除任务中不完整的观察结果 --- task <- TaskRegr$new("data", data, "y")
---?
我认为没有用于删除观察值的预处理运算符。
我要做的是在任务中使用 filter
方法。
示例:
t = tsk("pima")
ids = complete.cases(t$data())
# number of incomplete observations
sum(!ids)
t$filter(which(ids))
# number of incomplete observations
# should be zero now
ids = complete.cases(t$data())
sum(!ids)
complete.cases
给出一个布尔向量,指示哪些行包含完整的观察结果(没有 NA)。
filter
通过参数中提供的行 ID 对任务数据进行子集化。参数中未给出的行 ID 将被删除 in-place.
如果您想对不完整的观察结果进行插补,可以使用一些插补运算符,例如 PipeOpImputeConstant,它可以通过常数对特征进行插补。
是否可以使用 mlr3
过滤器或 pipeops 删除任务中不完整的观察结果 --- task <- TaskRegr$new("data", data, "y")
---?
我认为没有用于删除观察值的预处理运算符。
我要做的是在任务中使用 filter
方法。
示例:
t = tsk("pima")
ids = complete.cases(t$data())
# number of incomplete observations
sum(!ids)
t$filter(which(ids))
# number of incomplete observations
# should be zero now
ids = complete.cases(t$data())
sum(!ids)
complete.cases
给出一个布尔向量,指示哪些行包含完整的观察结果(没有 NA)。
filter
通过参数中提供的行 ID 对任务数据进行子集化。参数中未给出的行 ID 将被删除 in-place.
如果您想对不完整的观察结果进行插补,可以使用一些插补运算符,例如 PipeOpImputeConstant,它可以通过常数对特征进行插补。