我正在尝试使用λ值从-2到2对变量(即sqrt.CR)进行boxcox转换。在运行下面的R代码时,它会给出无效原子向量的错误。稍后检查早期帖子时,我看到很少有建议将矩阵转换为数据帧。虽然错误继续出现。有谁知道弄清楚这个错误?
R代码。
Matrix to data frame conversion
drivers.data<-as.data.frame(drivers)
Boxcox transfrom。
drivers$box_CR<-boxcox(drivers.data$sqrt.CR,lambda=seq(-2,2))
答案 0 :(得分:3)
boxcox的输入必须是lm或aov调用的输出,而不是你的数字向量。见?boxcox
。
boxcox(对象,...)
参数:
object:公式或拟合模型对象。目前只有'lm'和 处理'aov'对象。
答案 1 :(得分:2)
可能是由于程序包冲突所致,在MASS中,boxcox需要一个模型对象lm,而在bestNormalize中则需要一个向量。
尝试
bestNormalize::boxcox(drivers.data)