R'de 0 ile 1 arasındaki değerler nasıl ölçeklenir


R’de bir değişkenin değerlerini 0 ile 1 arasında ölçeklendirmek için aşağıdaki yöntemleri kullanabilirsiniz:

Yöntem 1: R tabanını kullanın

 #define function to scale values between 0 and 1
scale_values <- function (x){(x-min(x))/(max(x)-min(x))}

x_scaled <- rescale(x)

Yöntem 2: Scale paketini kullanın

 library (scales)

x_scaled <- rescale(x)

Aşağıdaki örnekler, R’deki aşağıdaki veri çerçevesiyle her yöntemin pratikte nasıl kullanılacağını gösterir:

 #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.

Örnek 1: R tabanını kullanarak değerleri 0 ile 1 arasında ölçeklendirme

Aşağıdaki kod, R tabanında özel bir işlevin nasıl tanımlanacağını ve ardından veri çerçevesinin satış sütunundaki değerleri 0 ile 1 arasında ölçeklendirmek için işlevin nasıl kullanılacağını gösterir:

 #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

Satış sütunundaki değerlerin her biri artık 0 ile 1 arasında ölçeklendirilmiştir.

Bu işlev, değerlerin her birini ölçeklendirmek için aşağıdaki formülü kullandı:

  • Ölçeklendirilmiş değer = (değer – min değer) / (maks değer – min değer)

Örneğin A mağazasının satışlarının ölçeklendirilmiş değeri şu şekilde hesaplandı:

  • Ölçeklendirilmiş değer = (12 – 12) / (77 – 12) = 0 / 65 = 0 .

Benzer şekilde B mağazasının satışlarının bugünkü değeri de şu şekilde hesaplandı:

  • Ölçeklendirilmiş değer = (24 – 12) / (77 – 12) = 12 / 65 = 0,1846 .

Ve benzeri.

Örnek 2: Scales paketini kullanarak değerleri 0 ile 1 arasında ölçeklendirme

Aşağıdaki kod, veri çerçevesinin satış sütunundaki değerleri 0 ile 1 arasında olacak şekilde ölçeklendirmek için R’deki Scales paketinin rescale() işlevinin nasıl kullanılacağını gösterir:

 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

Satış sütunundaki değerlerin her biri artık 0 ile 1 arasında ölçeklendirilmiştir.

Bu ölçeklendirilmiş değerlerin, R tabanı yöntemi kullanılarak hesaplanan değerlere karşılık geldiğini unutmayın.

Ayrıca rescale() fonksiyonunun, ölçeklendirilmiş değerlerin aralığını belirten bir to argümanını kabul ettiğini unutmayın.

Örneğin satış sütunundaki değerleri 0 ile 100 arasında ölçeklendirmek için aşağıdaki sözdizimini kullanabilirsiniz:

 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

Satış sütunundaki değerlerin her biri artık 0 ile 100 arasında ölçeklendirilmiştir.

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

R’de kırpılmış ortalama nasıl hesaplanır
R’de ağırlıklı ortalama nasıl hesaplanır
R’de her satırdaki maksimum değer nasıl hesaplanır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir