小编典典

标准化 R 中的数据列

all

我有一个名为的数据集spam,其中包含 58 列和大约 3500 行与垃圾邮件相关的数据。

我计划将来在这个数据集上运行一些线性回归,但我想事先进行一些预处理并将列标准化以具有零均值和单位方差。

有人告诉我最好的方法是使用 R,所以我想问一下 如何使用 R 实现标准化 ?我已经正确加载了数据,我只是在寻找一些包或方法来执行此任务。


阅读 67

收藏
2022-05-24

共1个答案

小编典典

我必须假设你的意思是说你想要一个 0 的平均值和一个 1
的标准差。如果你的数据在数据框中并且所有列都是数字,你可以简单地调用scale数据上的函数来做你想做的事。

dat <- data.frame(x = rnorm(10, 30, .2), y = runif(10, 3, 5))
scaled.dat <- scale(dat)

# check that we get mean of 0 and sd of 1
colMeans(scaled.dat)  # faster version of apply(scaled.dat, 2, mean)
apply(scaled.dat, 2, sd)

使用内置函数是优雅的。比如这只猫:

在此处输入图像描述

2022-05-24