R에서 0과 1 사이의 값을 조정하는 방법
다음 방법을 사용하여 R에서 변수 값을 0에서 1 사이로 조정할 수 있습니다.
방법 1: R 베이스 사용
#define function to scale values between 0 and 1 scale_values <- function (x){(x-min(x))/(max(x)-min(x))} x_scaled <- rescale(x)
방법 2: 저울 패키지 사용
library (scales)
x_scaled <- rescale(x)
다음 예에서는 R의 다음 데이터 프레임을 사용하여 실제로 각 메서드를 사용하는 방법을 보여줍니다.
#create data frame df <- data. frame (store=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'), sales=c(12, 24, 23, 59, 45, 34, 50, 77)) #view data frame df blind sales 1 to 12 2 B 24 3 C 23 4 D 59 5 E 45 6 F 34 7 G 50 8:77 a.m.
예시 1: 기본 R을 사용하여 0과 1 사이의 값 스케일링
다음 코드는 기본 R에서 사용자 정의 함수를 정의한 다음 이 함수를 사용하여 데이터 프레임의 판매 열 값을 0에서 1 사이로 조정하는 방법을 보여줍니다.
#define function to scale values between 0 and 1 scale_values <- function (x){(x-min(x))/(max(x)-min(x))} #scale values in 'sales' column to be between 0 and 1 df$sales <- scale_values(df$sales) #view updated data frame df blind sales 1 A 0.0000000 2 B 0.1846154 3 C 0.1692308 4 D 0.7230769 5 E 0.5076923 6 F 0.3384615 7G 0.5846154 8 H 1.0000000
Sales 열의 각 값은 이제 0과 1 사이에서 조정됩니다.
이 함수는 다음 공식을 사용하여 각 값의 크기를 조정했습니다.
- 스케일링된 값 = (값 – 최소값) / (최대값 – 최소값)
예를 들어 매장 A의 매출에 대한 조정 값은 다음과 같이 계산되었습니다.
- 스케일링된 값 = (12 – 12) / (77 – 12) = 0 / 65 = 0 .
마찬가지로 매장 B 매출의 현재 가치는 다음과 같이 계산되었습니다.
- 조정된 값 = (24 – 12) / (77 – 12) = 12 / 65 = 0.1846 .
등등.
예시 2: Scales 패키지를 사용하여 0과 1 사이의 값 스케일링
다음 코드는 R에서 scales 패키지의 rescale() 함수를 사용하여 데이터 프레임의 sales 열 값을 0과 1 사이로 조정하는 방법을 보여줍니다.
library (scales) #scale values in 'sales' column to be between 0 and 1 df$sales <- rescale(df$sales) #view updated data frame df blind sales 1 A 0.0000000 2 B 0.1846154 3 C 0.1692308 4 D 0.7230769 5 E 0.5076923 6 F 0.3384615 7G 0.5846154 8 H 1.0000000
Sales 열의 각 값은 이제 0과 1 사이에서 조정됩니다.
이러한 스케일링된 값은 R 기본 방법을 사용하여 계산된 값에 해당합니다.
또한 rescale() 함수는 크기 조정된 값의 범위를 지정 하는 to 인수를 허용합니다.
예를 들어 다음 구문을 사용하여 판매 열의 값을 0에서 100 사이로 조정할 수 있습니다.
library (scales) #scale values in 'sales' column to be between 0 and 100 df$sales <- rescale(df$sales, to=c(0,100)) #view updated data frame df blind sales 1 A 0.00000 2 B 18.46154 3 C 16.92308 4 D 72.30769 5 E 50.76923 6 F 33.84615 7G 58.46154 8 A.M. 100.00000
Sales 열의 각 값은 이제 0에서 100 사이로 조정됩니다.
추가 리소스
다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.