Dalam pemrograman R, jika kita memiliki matriks yang telah diubah skala (scaled matrix), kita dapat mengembalikannya ke bentuk aslinya menggunakan operasi yang dikenal sebagai “unscale”. Proses ini melibatkan mengalikan setiap elemen matriks dengan faktor skala yang sesuai.

Untuk melakukan “unscale” pada matriks, kita perlu menyimpan faktor skala yang digunakan saat melakukan scaling sebelumnya. Misalnya, jika kita melakukan scaling pada matriks dengan mengurangi rata-rata kolom dan membagi setiap elemen dengan standar deviasi kolom, kita harus menyimpan rata-rata dan standar deviasi kolom tersebut.

Setelah faktor skala disimpan, kita dapat mengembalikan matriks ke bentuk aslinya dengan mengalikan setiap elemen dengan faktor skala yang sesuai. Misalnya, jika kita ingin mengembalikan matriks yang telah diubah skala ke bentuk aslinya dengan mengalikan setiap elemen dengan standar deviasi kolom dan menambahkan kembali rata-rata kolom,

mt <- matrix(c(1:20), ncol = 5)

cat("Original matrix:\n")
## Original matrix:
print(mt)
##      [,1] [,2] [,3] [,4] [,5]
## [1,]    1    5    9   13   17
## [2,]    2    6   10   14   18
## [3,]    3    7   11   15   19
## [4,]    4    8   12   16   20
scaled.mt <- scale(mt)

cat("Scaled matrix:\n")
## Scaled matrix:
print(scaled.mt)
##            [,1]       [,2]       [,3]       [,4]       [,5]
## [1,] -1.1618950 -1.1618950 -1.1618950 -1.1618950 -1.1618950
## [2,] -0.3872983 -0.3872983 -0.3872983 -0.3872983 -0.3872983
## [3,]  0.3872983  0.3872983  0.3872983  0.3872983  0.3872983
## [4,]  1.1618950  1.1618950  1.1618950  1.1618950  1.1618950
## attr(,"scaled:center")
## [1]  2.5  6.5 10.5 14.5 18.5
## attr(,"scaled:scale")
## [1] 1.290994 1.290994 1.290994 1.290994 1.290994
unscaled.mt <- t(apply(scaled.mt, 1,
                function(r) r * attr(scaled.mt, 'scaled:scale') +
                                attr(scaled.mt, 'scaled:center')))

cat("Unscaled matrix:\n")
## Unscaled matrix:
print(unscaled.mt)
##      [,1] [,2] [,3] [,4] [,5]
## [1,]    1    5    9   13   17
## [2,]    2    6   10   14   18
## [3,]    3    7   11   15   19
## [4,]    4    8   12   16   20

Proses ini akan menghasilkan matriks yang kembali ke bentuk aslinya sebelum dilakukan scaling. Dengan demikian, kita dapat memperoleh kembali nilai-nilai yang sesungguhnya dari data yang telah diubah skala sebelumnya.