Функция scale() в R - стандартизация данных

R 语言实例Примеры на языке R

Функция scale() в R используется для стандартизации данных (стандартизация z-оценок).

После стандартизации среднее значение данных равно 0, а стандартное отклонение — 1; часто используется, чтобы устранить влияние разных размерностей (единиц измерения).

Синтаксис функции scale() выглядит следующим образом:

scale(x, center = TRUE, scale = TRUE)

Описание параметра:

  • xНа вход: числовая матрица или фрейм данных.

  • centerВыполнять ли центрирование (вычитать среднее), по умолчанию TRUE.

  • scaleВыполнять ли масштабирование (деление на стандартное отклонение), по умолчанию TRUE.

Пример

# Исходные данные: переменные с разными размерностями
height <- c(160, 170, 165, 175, 180)     # Диапазон 160-180
income <- c(50000, 60000, 55000, 80000, 90000)  # Диапазон 50000-90000
age <- c(25, 30, 28, 35, 40)             # Диапазон 25-40

# Объединить в матрицу
data_matrix <- cbind(height, income, age)
print("Исходные данные:")
print(data_matrix)

# Стандартизировать
scaled_data <- scale(data_matrix)
print("После стандартизации (среднее 0, стандартное отклонение 1):")
print(round(scaled_data, 3))

# Проверить среднее и стандартное отклонение
print("Средние по столбцам после стандартизации (должны быть близки к 0):")
print(round(colMeans(scaled_data), 3))
print("Стандартные отклонения по столбцам после стандартизации (должны быть равны 1):")
print(round(apply(scaled_data, 2, sd), 3))

Выполнение приведенного выше кода дает следующий вывод:

[1] "原始数据:"
     height income age
[1,]    160  50000  25
[2,]    170  60000  30
[3,]    165  55000  28
[4,]    175  80000  35
[5,]    180  90000  40
[1] "标准化后(均值为0,标准差为1):"
       height income    age
[1,] -1.2649 -1.2647 -1.2649
[2,]  0.0000 -0.4739  0.0000
[3,] -0.6325 -0.8699 -0.6325
[4,]  0.6325  0.7109  0.6325
[5,]  1.2649  1.8976  1.2649
[1] "标准化后各列均值(应接近0):"
 height  income     age
      0       0       0
[1] "标准化后各列标准差(应等于1):"
height income    age
     1      1      1

R 语言实例Примеры на языке R

Другие расширения