如何在R数据框中从列均值中减去列值?
要从R数据框中从列均值中减去列值,我们可以按照以下步骤操作:
- 首先,创建一个数据框。
- 然后,使用colMeans函数查找列均值。
- 之后,从列均值中减去列值。
创建数据框
让我们创建一个如下所示的数据框:
> x1<-sample(1:100,20) > x2<-sample(1:100,20) > x3<-sample(1:100,20) > df<-data.frame(x1,x2,x3) > df
执行上述脚本后,将生成以下输出(由于随机化,此输出会在您的系统上有所不同):
x1 x2 x3 1 54 73 57 2 79 52 92 3 87 51 47 4 13 12 1 5 70 90 19 6 15 99 9 7 56 81 22 8 75 68 82 9 63 11 67 10 40 50 71 11 45 42 94 12 32 80 50 13 80 83 33 14 6 27 5 15 91 100 36 16 52 60 46 17 76 9 6 18 19 2 64 19 18 97 27 20 67 8 83
查找列均值
使用colMeans函数查找列均值:
> x1<-sample(1:100,20) > x2<-sample(1:100,20) > x3<-sample(1:100,20) > df<-data.frame(x1,x2,x3) > colMeans(df)
输出
x1 x2 x3 51.90 54.75 45.55
从列均值中减去列值
使用数据框和数据框的列均值从列均值中减去列值:
> x1<-sample(1:100,20) > x2<-sample(1:100,20) > x3<-sample(1:100,20) > df<-data.frame(x1,x2,x3) > df[]-colMeans(df[])[col(df[])]
输出
x1 x2 x3 1 2.1 18.25 11.45 2 27.1 -2.75 46.45 3 35.1 -3.75 1.45 4 -38.9 -42.75 -44.55 5 18.1 35.25 -26.55 6 -36.9 44.25 -36.55 7 4.1 26.25 -23.55 8 23.1 13.25 36.45 9 11.1 -43.75 21.45 10 -11.9 -4.75 25.45 11 -6.9 -12.75 48.45 12 -19.9 25.25 4.45 13 28.1 28.25 -12.55 14 -45.9 -27.75 -40.55 15 39.1 45.25 -9.55 16 0.1 5.25 0.45 17 24.1 -45.75 -39.55 18 -32.9 -52.75 18.45 19 -33.9 42.25 -18.55 20 15.1 -46.75 37.45
广告