Это масштабирует каждый столбец индивидуально? р - PullRequest
2 голосов
/ 15 апреля 2020

Если бы я хотел стандартизировать столбцы 2 и 3 (каждый столбец стандартизировали отдельно), сработало бы это?

df[c(2:3)] <- scale(df[c(2:3)])

1 Ответ

4 голосов
/ 15 апреля 2020

Согласно ?scale

Значение масштаба определяет, как выполняется масштабирование столбца (после центрирования). Если масштаб представляет собой числовой c -подобный вектор с длиной, равной количеству столбцов x, то каждый столбец x делится на соответствующее значение из масштаба. Если масштаб равен ИСТИНА, то масштабирование выполняется путем деления (центрированных) столбцов x на их стандартные отклонения, если центр равен ИСТИНА, а в противном случае root означает квадрат. Если масштаб равен FALSE, масштабирование не выполняется.


В качестве теста мы можем сделать это индивидуально для каждого столбца и в целом

data(mtcars)
out1 <- sapply(mtcars, scale)
out2 <- scale(mtcars)
all.equal(out1, out2, check.attributes = FALSE)
#[1] TRUE

scale отдельно для каждого столбца

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...