我运行了代码:
r_df_scaled <- as.matrix(scale(r_df[,c(-1,-2)]))
结果是一个具有标准正态分布的矩阵,如下所示:
attr(,"scaled:center")
Fresh Milk Grocery Frozen
10639.957 4780.110 6899.267 2484.594
Detergents_Paper Delicassen
2229.187 1192.970
attr(,"scaled:scale")
Fresh Milk Grocery Frozen
8630.3470 3800.6264 5844.9457 2359.4800
Detergents_Paper Delicassen
2581.6316 923.4373
你能解释一下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
因此,请在对“test”中的行运行缩放函数后查看打印的消息
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
你看到attr(,"scaled:center")
了吗?与我们计算的平均值相同
scaled:scale
显示该行/列中的标准差
> sd(test$cola)
[1] 1.732051
> sd(test$colb)
[1] 1
> sd(test$colc)
[1] 1
与attr(,"scaled:scale")相同
关于r - R中scale()函数中的attr(,"scaled:center")和attr(,"scaled:scale")是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41648538/