警告消息 - 来自 dummies 包的 dummy
Warning message - dummy from dummies package
我正在使用 dummies 包为分类变量生成虚拟变量,有些变量有两个以上的类别。
testdf<- data.frame(
"A" = as.factor(c(1,2,2,3,3,1)),
"B" = c('A','B','A','B','C','C'),
"C"= c('D','D','E','D','D','E'))
#
#Generate dummy variables:
#
testdf<- cbind(testdf, dummy(testdf$C, sep='_'))
testdf<- cbind(testdf, dummy(testdf$B, sep='_'))
对于这两个命令,我得到:
Warning message:
In model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE) :
non-list contrasts argument ignored
虽然结果似乎是正确的。您能否就警告的原因提出建议?
在 dummy
的代码中,函数调用
mm <- model.matrix(~x - 1, model.frame(~x - 1), contrasts = FALSE)
请注意,他们将 "FALSE" 传递给 contrasts=
参数(实际上是 contrasts.arg=
参数)。根据 ?model.matrix
帮助页面,这应该是一个对比列表。它不应该是 TRUE/FALSE 值。请注意帮助页面 ?model.matrix
中的这条附加消息
Whereas invalid contrasts.args have been ignored always, they are warned about since R version 3.6.0
所以基本上这个包错误地使用了一个参数,这个参数在以前的 R 版本中被默默地忽略了,但是从 R 3.6 开始现在会触发警告。行为没有任何不同,但警告是新的。看起来该软件包自 2012 年以来就没有更新过,因此它可能永远不会更新以使警告消失。
我正在使用 dummies 包为分类变量生成虚拟变量,有些变量有两个以上的类别。
testdf<- data.frame(
"A" = as.factor(c(1,2,2,3,3,1)),
"B" = c('A','B','A','B','C','C'),
"C"= c('D','D','E','D','D','E'))
#
#Generate dummy variables:
#
testdf<- cbind(testdf, dummy(testdf$C, sep='_'))
testdf<- cbind(testdf, dummy(testdf$B, sep='_'))
对于这两个命令,我得到:
Warning message: In model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE) : non-list contrasts argument ignored
虽然结果似乎是正确的。您能否就警告的原因提出建议?
在 dummy
的代码中,函数调用
mm <- model.matrix(~x - 1, model.frame(~x - 1), contrasts = FALSE)
请注意,他们将 "FALSE" 传递给 contrasts=
参数(实际上是 contrasts.arg=
参数)。根据 ?model.matrix
帮助页面,这应该是一个对比列表。它不应该是 TRUE/FALSE 值。请注意帮助页面 ?model.matrix
Whereas invalid contrasts.args have been ignored always, they are warned about since R version 3.6.0
所以基本上这个包错误地使用了一个参数,这个参数在以前的 R 版本中被默默地忽略了,但是从 R 3.6 开始现在会触发警告。行为没有任何不同,但警告是新的。看起来该软件包自 2012 年以来就没有更新过,因此它可能永远不会更新以使警告消失。