如何标准化包含数字和因子变量的数据框

wil*_*lga 5 variables r standardized

我的数据框my.data包含数字和因子变量.我想标准化此数据框中的数字变量.

> mydata2=data.frame(scale(my.data, center=T, scale=T))
Error in colMeans(x, na.rm = TRUE) : 'x' must be numeric
Run Code Online (Sandbox Code Playgroud)

这样做可以标准化工作吗?我想标准化列8,9,10,11和12,但我认为我的代码错了.

mydata=data.frame(scale(flowdis3[,c(8,9,10,11,12)], center=T, scale=T,))
Run Code Online (Sandbox Code Playgroud)

提前致谢

akr*_*run 8

这是标准化的一个选项

 mydata[] <- lapply(mydata, function(x) if(is.numeric(x)){
                     scale(x, center=TRUE, scale=TRUE)
                      } else x)
Run Code Online (Sandbox Code Playgroud)