Sebelumnya saya sudah menulis bagaimana caranya mengembalikan lebih dari satu nilai menggunakan Python.
Kali ini saya ingin memposting bagaimana cara melakukan hal serupa di R.
Sama halnya di Python, caranya sangatlah sederhana di R. Akan tetapi ada sedikit perbedaan
Pada definisi fungsi di Python, cukup kalian beritahu untuk mengembalikan variabel-variabel yang ingin dikembalikan oleh fungsi. Akan tetapi di R tidak segampang itu, kalian harus menggabungkan variabel-variabel tersebut sebagai ‘satu kesatuan’.
Untuk contoh, di postingan ini saya akan membuat fungsi yang akan mengembalikan rata-rata, standar deviasi, nilai maksimum, dan nilai minimum.
getValues <- function(x) {
avg <- mean(x)
stddev <- sd(x)
maximum <- max(x)
minimum <- min(x)
return (list(average = avg, stddev = stddev, maximum = maximum, minimum = minimum))
}
x = c(1,2,3,4,5,6,7,8,9,10)
values <- getValues(x)
print (sprintf("Average: %f", values$average))
print (sprintf("Std dev: %f", values$stddev))
print (sprintf("Maximum: %f", values$maximum))
print (sprintf("Minimum: %f", values$minimum))Hasil dari program di atas adalah:
> source('~/Projects/blog/funcR/temp.R', echo=FALSE)
[1] "Average: 5.500000"
[1] "Std dev: 3.027650"
[1] "Maximum: 10.000000"
[1] "Minimum: 1.000000"Hal yang mungkin perlu diketahui di sini adalah…
Fungsi dari Numpy di Python menghitung standar deviasi populasi (lihat dokumentasinya)
Fungsi bawaan R menghitung standar deviasi sampel (lihat di sini)
Itulah mengapa nilai standar deviasi hasil program R dan Python berbeda (lihat saja di postingan saya yang sebelumnya.
Sudah, itu saja. gampang juga kan?