R (programski jezik)
U računarstvu, R je programski jezik i programsko okruženje za statističke izračune i grafike. On je izvedba S programskog jezika sa leksičkom semantikom inspirisanom Scheme (programski jezik) -om. R su stvorili Ros Ihaka i Robert DŽentlmen[2] na Aukland univerzitetu (University of Auckland), Novi Zeland, a sad ga razvija R Development Core Team. Nazvan je djelimično prema imenima autora, a djelom kao igra riječi na ime S.[3]
Izdavač: | R Development Core Team; Ross Ihaka and Robert Gentleman |
---|---|
Zadnja inačica: | 3.1.0 / 1993 [1] |
Operacijski sustav: | Cross-platform |
Vrsta: | |
Licenca: | GNU General Public License |
Web stranica: | http://www.r-project.org/ |
R jezik je postao standard među statističarima koji razvijaju statistički softver,[4][5] i široko je korišćen za razvoj statističkog softvera i analizu podataka.[5]
R je dio GNU projekta.[6] NJegov izvorni kod je slobodan i pod uslovima koje daje GNU-ova opšta javna licenca, a prekompilirane binarne verzije su obezbjeđene za različite operativne sisteme. R koristi interfejs komandne linije, kroz više grafičkih korisničkih okruženja.
Povijest
urediR je implementacija programskog jezika S u kombinaciji inspiriran programskim jezikom Scheme. "S" je razvio John Chambers 1976. godine tijekom svog rada u tvrtki Bell Labs. Postoje razlike izmedu dva prethodno navedena programska jezika, međutim veliki dio koda napisan za "S" stoji nepromijenjen[7]. R su razvili Ross Ihaka i Robert Gentleman sa Sveučilišta u Aucklandu na Novom Zelandu te ga trenutno nadograđuje i razvija R Development Core Team, čijeg je John Chambers i danas član[8]. R je dobio ime po imenima dva prvotna autora te djelomično kao igra riječi budući da je S ime programskog jezika na čijem je temelju nastao R. Projekt je započet 1992. godine, a prva verzija izdana je 1995., a stabilna beta verzija 2000. godine[9][10][11].
Osobine
urediR obezbjeđuje širok izbor statističkih (linearnih i nelinearnih modela, klasičnih statističkih testova, analiza vremenskih serija, klasifikacija, klasteri, i ostalo) i grafičkih tehnika. R, je slično kao S, projektovan kao pravi programski jezik, i omogućava korisnicima dodatnu funkcionalnost definisanjem novih funkcija. Postoji više važnih razlika, ali dosta koda može biti iskorišten kao S, nepromjenjen. Mnogo R-ovog sistema je takođe pisana u ovom jeziku, što ga čini lakšim za korisnike pri formiranju algoritama. Kod zahtjevnih zadataka, C, C++ i Fortran kod može biti povezan i pokrenut. Napredni korisnici mogu pisati C kod za manipulisanje R-ovih objekata direktno.
R može biti proširen, kroz pkete obezbjeđene od korisnika, za specifične funkcije ili specifične oblasti proučavanja. Zbog svog S nasleđa, R ima bolju podršku za Objektno-orijentisano programiranje nego ostali statistički programski jezici. Proširivost R-a je olakšana i njegovim popustljivim jezičkim opsegom.[12]
Sljedeća prednost R-a su njegove grafičke mogućnosti, koje obezbjeđuju grafike kvaliteta dovoljno dobrog za publikovanje koji uključuju matematičke simbole. R ima sopstveni LaTeX-oliki format dokumenata, koji se koristi za predstavljanje sveobuhvatne dokumentacije, preko interneta u brojnim formatima ili kao štampana kopija.
Iako je R pretežno korišten od statističara i praktičara koji zahtjevaju okruženje za statističke proračune i razvoj softvera, takođe može biti korišten kao opšti alat za izračunavanje matrica učinka uporedivog sa onim od GNU Oktav i njegovog vlasničkog konkurenta, MATLAB.[13] RWeka[14] sučelje je dodato popularnom softveru za izlučivanje podataka Weka koje dozvoljava mogućnost upisa i čitanja u arff formatu koji dalje omogućava korištenje mogućnosti programa.
Primjeri
urediSljedeći primjeri ilustruju osnove sintakse jezika i korištenje komandne linije.
> x <- c(1,2,3,4,5,6) # Create ordered collection > y <- x^2 # Square the elements of x > mean(y) # Calculate arithmetic mean of y [1] 15.16667 > var(y) # Calculate sample variance [1] 178.9667 > summary(lm(y ~ x)) # Fit a linear regression 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)) # Request 2x2 plot layout > plot(lm(y ~ x)) # Diagnostic plot of regression model
Povezano
urediReference
uredi- ↑ A Brief History R : Past and Future History, Ross Ihaka, Statistics Department, The University of Auckland, Auckland, New Zealand, available from the CRAN website
- ↑ „Robert Gentleman's home page”. Arhivirano iz originala na datum 2006-06-23. Pristupljeno 20. 7. 2009.
- ↑ Kurt Hornik. The R FAQ: Why is R named R?. ISBN 3-900051-08-9. Pristupljeno 29. 1. 2008.
- ↑ Fox, John and Andersen, Robert (January 2005). "Using the R Statistical Computing Environment to Teach Social Statistics Courses" (PDF). Department of Sociology, McMaster University. pristup na dan 3. 8. 2006.. Arhivirano 2016-06-11 na Wayback Machine-u „Archive copy”. Arhivirano iz originala na datum 2016-06-11. Pristupljeno 2015-06-16.
- ↑ 5,0 5,1 Vance, Ashlee (6. 1. 2009.). „Data Analysts Captivated by R's Power”. New York Times. Pristupljeno 28. 4. 2009. »R is also the name of a popular programming language used by a growing number of data analysts inside corporations and academia. It is becoming their lingua franca...«
- ↑ „What is R?”. Pristupljeno 28. 4. 2009.
- ↑ https://www.r-project.org/about.html Pristupljeno 04.02.2020.
- ↑ Thieme, Nick (2018-08). „R generation” (en). Significance 15 (4): 14–19. DOI:10.1111/j.1740-9713.2018.01169.x. Pristupljeno 2020-02-04.
- ↑ https://blog.revolutionanalytics.com/2016/03/16-years-of-r-history.html Arhivirano 2017-10-06 na Wayback Machine-u Pristupljeno 04.02.2020.
- ↑ https://www.stat.auckland.ac.nz/~ihaka/downloads/Massey.pdf Pristupljeno 04.02.2020.
- ↑ Eddelbuettel, Dirk; François, Romain (2011). „Rcpp : Seamless R and C++ Integration” (en). Journal of Statistical Software 40 (8). DOI:10.18637/jss.v040.i08. ISSN 1548-7660. Pristupljeno 2020-02-04.
- ↑ Jackman, Simon (2003). „R For the Political Methodologist” (PDF). The Political Methodologist (Political Methodology Section, American Political Science Association) 11 (1): 20–22. Arhivirano iz originala na datum 2006-07-21. Pristupljeno 2006-08-03.
- ↑ „Speed comparison of various number crunching packages (version 2)”. SciView. Arhivirano iz originala na datum 2009-08-08. Pristupljeno 3. 11. 2007.
- ↑ „RWeka: An R Interface to Weka. R package version 0.3-17”. Kurt Hornik, Achim Zeileis, Torsten Hothorn and Christian Buchta. Pristupljeno 2009.
Literatura
uredi- Kurt Hornik. The R FAQ: Why is R named R?. ISBN 3-900051-08-9. Pristupljeno 29. 1. 2008.