如何在R数据框中将变量转换为零均值和单位方差?

将变量转换为零均值和单位方差意味着我们要对变量进行标准化,这可以在尺度函数的帮助下完成,我们可以按照以下步骤操作 -

  • 首先,创建数据框。

  • 然后使用 scale 函数将变量转换为零均值和单位方差。

创建数据框

让我们创建一个数据框,如下所示 -

例子

x<-sample(1:100,20)
df<-data.frame(x)
df

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

输出

   x
1  87
2  17
3  28
4  100
5  41
6  44
7  25
8  92
9  37
10 3
11 9
12 46
13 15
14 53
15 29
16 65
17 99
18 91
19 83
20 51

转换变量零均值和单位方差

使用 scale 函数将 x 转换为零均值和单位方差变量 -

例子

x<-sample(1:100,20)
df<-data.frame(x)
Converted_df<-scale(df$x)
Converted_df

输出

           [,1]
[1,]   1.143807532
[2,]  -1.064924254
[3,]  -0.717837830
[4,]   1.554000578
[5,]  -0.307644784
[6,]  -0.212984851
[7,] -0.812497764
[8,]   1.301574088
[9,] -0.433858029
[10,] -1.506670611
[11,] -1.317350744
[12,] -0.149878228
[13,] -1.128030876
[14,] 0.070994950
[15,] -0.686284519
[16,] 0.449634685
[17,] 1.522447267
[18,] 1.270020777
[19,] 1.017594287
[20,] 0.007888328
attr(,"scaled:center")
[1] 50.75
attr(,"scaled:scale")
[1] 31.69239

猜你喜欢