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에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R에서 절사 평균을 계산하는 방법
R에서 가중 평균을 계산하는 방법
R의 각 행에서 최대값을 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다