R中的scale()函数中的attr(,“scaled:center”和attr(,“scaled:scale”)是什么?
我运行了代码:R中的scale()函数中的attr(,“scaled:center”和attr(,“scaled:scale”)是什么?,r,R,我运行了代码: r_df_scaled <- as.matrix(scale(r_df[,c(-1,-2)])) 你能解释一下什么是scaled:center,scaled:scale指的是什么吗?scaled:center查找行(或列)的平均值,具体取决于逗号的位置) 例如,数据帧“测试”: cola colb colc 1 2 1 4 3 2 4 1 3 对于可乐,平均值为(1+4+4)/3=3 对于colb,平均值
r_df_scaled <- as.matrix(scale(r_df[,c(-1,-2)]))
你能解释一下什么是
scaled:center
,scaled:scale
指的是什么吗?scaled:center
查找行(或列)的平均值,具体取决于逗号的位置)
例如,数据帧“测试”:
cola colb colc
1 2 1
4 3 2
4 1 3
对于可乐,平均值为(1+4+4)/3=3
对于colb,平均值为(3+2+1)/3=2
对于colc,平均值为(1+2+3)/3=2
因此,请参阅运行“测试”中的行的缩放功能后打印的消息
cola colb colc
[1,] -1.1547005 0 -1
[2,] 0.5773503 1 0
[3,] 0.5773503 -1 1
attr(,"scaled:center")
cola colb colc
3 2 2
attr(,"scaled:scale")
cola colb colc
1.732051 1.000000 1.000000
您是否看到了属性(,“缩放:中心”)?与我们计算的平均数相同
scaled:scale
显示该行/列中的标准偏差
> sd(test$cola)
[1] 1.732051
> sd(test$colb)
[1] 1
> sd(test$colc)
[1] 1
与
attr(,“scale:scale”)
阅读scale手册页的详细信息部分相同:?scale
“?scale”表示[中心:长度等于x列数的逻辑值或数字向量。scale:长度等于x列数的逻辑值或数字向量。]我没有得到任何东西,stillscale函数用于获取变量的zscore。你知道什么是zscore吗?也许吧?我能知道的是,我应该学习更多的thx xD。帮助的相关部分是:“如果中心为真,则通过减去列的平均值来进行居中”(尽管您可以手动输入比例),以及“如果比例为真,则通过将x的(居中)列除以它们的标准偏差来进行缩放”。因此,在您的示例中,属性返回平均值和标准偏差。(因此,在您的示例中,它将您的变量缩放为均值零和方差一)[应用此转换时,您的变量不需要正态分布,并且转换不会使它们正态分布。或者]
> sd(test$cola)
[1] 1.732051
> sd(test$colb)
[1] 1
> sd(test$colc)
[1] 1