R dosyası nedir?
.r uzantılı bir dosya, R programlama diline aittir. Bu dil, istatistiksel hesaplama için belirtilmiÅtir ve istatistikçiler topluluÄu arasında popülerdir. Veri analizi ve istatistiksel yazılımın geliÅtirilmesi, veri madenciliÄi alanında bu dil tarafından gerçekleÅtirilen iki ana kategoridir. Bu dili ve yazılımı kullanmanın bir baÅka avantajı da, kaliteli grafiklerin üretilmesine yardımcı olan statik grafikler oluÅturma olanaÄı saÄlamasıdır. Dinamik ve etkileÅimli grafikler için bazı ek paketler kullanılır.
Bu dilin yazılımı bir Genel Kamu Lisansı içerir, dolayısıyla kullanılabilirliÄi ücretsizdir. R’nin kodu genellikle C ve R’nin kendisi gibi yüksek seviyeli dillerde yazılır. Yazılım, RStudio ve Jupyter’in grafik kullanıcı arabirimleri (dizüstü bilgisayar arabirimi) gibi üçüncü taraf arabirimlerin kullanılabilirliÄi ile birlikte bir komut satırı arabirimi içerir. R kütüphanelerinin uygulanmasında kullanılan istatistiksel teknikler vardır. Ayrıca doÄrusal ve doÄrusal olmayan modellemeyi de içerir.
Kısa Tarih
Bu dil, S diliyle birlikte sözcüksel kapsam belirleme SemantiÄinin bir uygulamasıdır. 1976’da Bell Laboratuarlarında John Chambers, S dilini geliÅtirdi. Hatta S-PLUS’ın kodunda R dilinde kullanıldıÄında pek bir deÄiÅiklik olmuyor. 1995 yılında Martin Maechler ve arkadaÅları, Genel kamu lisansı altında ücretsiz yazılımla birlikte R dilini yaptı.
Comprehensive R Archive Network’ün resmi duyurusu 23 Nisan 1997’de yapıldı. 2000 yılında ilk kararlı beta olan 1.0 versiyonu resmi olarak yayınlandı. İlk sürümü 1995 yılında gerçekleÅirken, daha sonraki yıllarda CRAN (kapsamlı R arÅiv aÄı) piyasaya sürülüyordu.
İlk sürümlerden sonra dilin daha da geliÅtirilmesi için 1997 yılında çekirdek bir ekip oluÅturuldu. Daha sonraki yıllarda birçok güncelleme ve deÄiÅtirilmiÅ sürüm yayınlandı ve modern iÅletim sistemlerine ve teknolojisine göre yeni özellikler içeriyordu. Son deÄiÅiklik Mayıs 2021’de tanıtıldı.
Teknik Åartname
R bir yorumlama dilidir ve bu dile eriÅmek için bir komut satırı yorumlayıcısı gerekir. Toplam gibi hesaplamalar promo komutunda yazılır ve yorumlandıktan sonra sonuçlar gösterilir. Veriler ve kod, S ifadeleriyle temsil edilir. Bu dilin bir baÅka özelliÄi de, genel matris hesaplama kolaylıÄı saÄlayan bir araç kutusu olarak çalıÅtırılabilmesidir.
R kodunu çalıÅtırmak ve düzenlemek için çeÅitli uygulamalar kullanılır. R programlama dilinin kodunu çalıÅtırmak için Rattle GUI, RKWard gibi entegre geliÅtirme ortamları da mevcuttur. Microsoft R open olarak bilinen baÅka bir Microsoft yazılımı da çok iÅ parçacıklı hesaplamalar gibi karmaÅık hesaplamalar için R daÄıtımıyla uyumlu olarak mevcuttur. R, dünya çapında Apache Spark API’yi içeren seçilmiÅ beÅ programlama dilinden biridir.
R dili, iÅlevlerle birlikte yordamsal programlamayı destekler. Bununla birlikte, özellikle bazı iÅlevler için, genel iÅlevlerle birlikte OOP’yi (nesne yönelimli programlama) destekler. DeÄerler, iÅlevler ve bunların deÄerlendirilmesi kullanıldıklarında gerçekleÅirse argümanları iletmek için kullanılır, yani iÅlevler çaÄrılırken deÄerlendirilmezler.
R Dosya Biçimi ÃrneÄi
Sözdizimi
> x <- 1:6 # Create a numeric vector in the current environment
> y <- x^2 # Create vector based on the values in x.
> print(y) # Print the vectorâs contents.
[1] 1 4 9 16 25 36
> z <- x + y # Create a new vector that is the sum of x and y
> z # return the contents of z to the current environment.
[1] 2 6 12 20 30 42
> z_matrix <- matrix(z, nrow=3) # Create a new matrix that turns the vector z into a 3x2 matrix object
> z_matrix
[,1] [,2]
[1,] 2 20
[2,] 6 30
[3,] 12 42
> 2*t(z_matrix)-2 # Transpose the matrix, multiply every element by 2, subtract 2 from each element in the matrix, and return the results to the terminal.
[,1] [,2] [,3]
[1,] 2 10 22
[2,] 38 58 82
> new_df <- data.frame(t(z_matrix), row.names=c('A','B')) # Create a new data.frame object that contains the data from a transposed z_matrix, with row names 'A' and 'B'
> names(new_df) <- c('X','Y','Z') # set the column names of new_df as X, Y, and Z.
> print(new_df) #print the current results.
X Y Z
A 2 6 12
B 20 30 42
> new_df$Z #output the Z column
[1] 12 42
> new_df$Z==new_df['Z'] && new_df[3]==new_df$Z # the data.frame column Z can be accessed using $Z, ['Z'], or [3] syntax, and the values are the same.
[1] TRUE
> attributes(new_df) #print attributes information about the new_df object
$names
[1] "X" "Y" "Z"
$row.names
[1] "A" "B"
$class
[1] "data.frame"
> attributes(new_df)$row.names <- c('one','two') ## access and then change the row.names attribute; can also be done using rownames()
> new_df
X Y Z
one 2 6 12
two 20 30 42
İÅlev
# Declare function âfâ with parameters âxâ, âyâ
# that returns a linear combination of x and y.
f <- function(x, y) {
z <- 3 * x + 4 * y
return(z) ## the return() function is optional here
}
> f(1, 2)
[1] 11
> f(c(1,2,3), c(5,3,4))
[1] 23 18 25
> f(1:3, 4)
[1] 19 22 25
Veri Modelleme
> x <- 1:6 # Create x and y values
> y <- x^2
> model <- lm(y ~ x) # Linear regression model y = A + B * x.
> summary(model) # Display an in-depth summary of the model.
Call:
lm(formula = y ~ x)
Residuals:
1 2 3 4 5 6
3.3333 -0.6667 -2.6667 -2.6667 -0.6667 3.3333
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -9.3333 2.8441 -3.282 0.030453 *
x 7.0000 0.7303 9.585 0.000662 ***
---
Signif. codes: 0 â***â 0.001 â**â 0.01 â*â 0.05 â.â 0.1 â â 1
Residual standard error: 3.055 on 4 degrees of freedom
Multiple R-squared: 0.9583, Adjusted R-squared: 0.9478
F-statistic: 91.88 on 1 and 4 DF, p-value: 0.000662
> par(mfrow = c(2, 2)) # Create a 2 by 2 layout for figures.
> plot(model) # Output diagnostic plots of the model.