R (программчлалын хэл)

(R (програмчлалын хэл)-с чиглүүлэгдэв)
R хэл
Лого
Гарсан он8 сарын 1993; 30 жилийн өмнө (1993-08)[1]
ЗохиогчRoss Ihaka and Robert Gentleman
ХөгжүүлэгчR Core Team[2]
Тогтвортой хувилбар3.4.0 (You Stupid Darkness)[3] (4 сарын 21, 2017; 6 жилийн өмнө (2017-04-21))
ТөрөлжүүлэлтDynamic
ЛицензGNU GPL v2[4]
Файлын өргөтгөл.r, .R, .RData, .rds, .rda
Вэбсайтwww.r-project.org

R нь статистик тооцоолол, график дүрслэлд зоиулагдсан нээлттэй эх бүхий программчлалын хэл болон програм хангамж бөгөөд Статистик Тооцооллын R Сан дээр түшиглэдэг.[5] R хэлийг статистикчид, өгөгдлийн уурхайчид статистикийн програм хангамж[6] зохиох, мэдээлэлд дүн шинжилгээ хийх[7] зэрэгт өргөн хэрэглэхийн зэрэгцээ сүүлийн жилүүдэд түүний хэрэглээ бусад чиглэлд ч хурдацтай өсөн нэмэгдэж байна.[8]

R бол GNU програм хангамж юм.[9] R програмын эх код C, Fortran, R хэл дээр бичигдсэн.[10] R програмыг GNU GPL Олон Нийтийн Лиценз-ээр голлох үйлдлийн системүүд дээр үнэ төлбөргүй ашиглах боломжтой. Мөн R нь командын мөрнөөс ажилладаг тул зориулалтын график интерфейс бүхий програмаар дамжуулан ашиглах нь зүйтэй.[11]

Түүх[засварлах | кодоор засварлах]

R нь John Chambers гэдэг хүний Bell Labs-д ажиллаж байх үедээ зохиосон програмчлалын S хэл дээр тулгуурласан. Эдгээрийн хооронд хэдэн чухал ялгаа байдаг ч S хэлээр бичигдсэн кодын ихэнх нь R дээр шууд ажилладаг.[12]

R програмыг Росс Ihaka , Роберт Gentleman[13] нар Шинэ Зеландын Веллингтон Их Сургууль-д байх үедээ зохиосон бөгөөд одоогоор R Development Core Team хөгжүүлж байна. S хэлний зохиогч Chambers уг багийн нэг гишүүн юм. R гэх нэр нь түүнийг анхлан зохиогчдын нэр болон гол суурь нь болсон S хэлний нэртэй холбоотой.[14] Төсөл 1992 онд санаачлагдсан бол анхны хувилбар нь 1995 онд гарсан. Харин тогтвортой beta хувилбар нь 2000 онд гарсан.[15][16][17]

R програм Монгол улсад[засварлах | кодоор засварлах]

R програмыг хэрэглэх, R хэлийг судлах явдал Монгол улсад улам бүр дэлгэрч буй бөгөөд үүнийг гэрчлэх мэдээ материал[18], нийгмийн сүлжээний бүлгэмүүд[19] цөөнгүй байна. Зарим их, дээд сургууль сургалтын хөтөлбөртөө R програмыг нэвтрүүлснээс тухайлан Монгол Улсын Их Сургууль дээр хэрэгжиж буй Статистик хөтөлбөрийг дурдаж болно.[баримт хэрэгтэй] Монгол хэл дээрх ном, сурах бичиг, гарын авлагын хувьд Г.Махгал, Ш.Мөнгөнсүх нар бичиж Б.Магсаржав хянан тохиолдуулсан Статистик програмчлалын R хэл сурах бичиг хэвлэгдэн гарчээ.[20][21]

Статистикийн зүгээс онцлох зүйлс[засварлах | кодоор засварлах]

R, түүний сангууд олон янзын статистик болон график хэрэгсэл агуулдаг. Тухайлбал шугаман болон шугаман бус загвар, статистик шинжүүрүүд, хугацаан цувааны шинжилгээ, бүлэглэх, ангилах болон бусад олон шинжилгээ дурдаж болно. Мөн R програмын нэмэлт багцууд олон янзын функц болон бусад зүйлс агуулдаг. R хэлний стандарт функцүүдийн олонх нь R хэл дээрээ бичигдсэн бөгөөд нэмэлтээр C, C++Fortran хэл дээрх код оруулан ажиллуулж болдог. Өндөр мэдлэг чадвартай хэрэглэгчид C, C++,[22] Java,[23] .NET[24] болон Python зэрэг хэл дээр R хэлний объект уруу шууд хандаж ажиллах код бичдэг.[25] Статистик тооцооллын бусад хэлнүүдээс ялгарах гол давуу тал бол R хэлний объект-хандалтат чанар бөгөөд энэ нь S хэлнээс түүнд дамжсэн билээ. R хэлний бас нэг онцлог lexical scoping зарчмыг хэрэгжүүлсэн явдал юм.[26]

Түүний өөр нэг давуу тал бол математикийн тэмдэгт агуулсан, хэвлэлийн шаардлагад нийцэх график диаграм байгуулдаг явдал юм. Мөн нэмэлт багцуудын тусламжтай динамик болон интерактив график диаграм ч байгуулах боломжтой.[27]

R програм өөрийн баримт бичиг боловсруулалтын LaTeX төст Rd гэх форматтай.[28]

Програмчлалын зүгээс онцлох зүйлс[засварлах | кодоор засварлах]

R нь шууд хөрвүүлэгдэн ажилладаг хэл бөгөөд хэрэглэгчид түүнийг командын мөрний хөрвүүлэгчээр дамжуулж ашигладаг. Хэрэв хэрэглэгч R хэлний командын мөрөнд 2+2 гэж бичээд enter дарвал компьютер доор үзүүлсэн шиг 4 гэсэн хариу өгнө:

> 2+2
[1] 4

R програм энэ тооцоог тус бүр нэг элементтэй хоёр векторын нийлбэр гэж ойлгох тул үр дүн нь нэг элементтэй вектор байна. [1] угтвар векторын эхний элемент хэвлэгдсэнийг илтгэнэ (энэ нь тооцооны үр дүн олон мөр дамнан хэвлэгдэх үед илүү ашиг тустай байдаг).

APL , MATLAB зэрэгтэй адил R хэл матриц дээрх арифметик үйлдлүүдийг дэмждэг. R-ын өгөгдлийн бүтцэд вектор, матриц, массив, датафрейм (өгөгдлийн сангийн хүснэгттэй төстэй), лист зэрэг багтдаг.[29] Эдгээр объектуудаас гадна регрессийн загвар, хугацаан цуваа болон гео-орон зайн координат зэрэг өөр бусад төрлийн объектууд байдаг. Мөн хэрэглэгч өөрөө шинээр объектын класс тодорхойлж ашиглах боломжтой. Скаляр төрлийн өгөгдлийн хувьд энэ нь бие даасан өгөгдлийн бүтэц болдоггүй.[30] Үүний оронд скаляр утгыг нэг урттай вектор гэж үздэг.[31]

R нь зарим функцийн хувьд функц бүхий процедур хандалтат програмчлал болон ерөнхий функц бүхий объект хандалтат програмчлалын аль алийг дэмждэг. Ерөнхий функц нь түүний аргументаар дамжин ирсэн объектын классаас хамааран ажилладаг. Өөрөөр хэлбэл ерөнхий функц объектын классыг ялгаад улмаар харгалзах функц уруу замчилж өгдөг. Жишээлбэл print нэртэй ерөнхий функц ашиглан бараг бүх төрлийн объектын утгыг хэвлэх тушаалыг  print(objectname)  хэлбэрээр өгч болдог.[32]

Багц[засварлах | кодоор засварлах]

R програмын боломж бололцоог хэрэглэгчдийн үүсгэсэн багц нэмж суулгах замаар жишээлбэл мэргэжлийн статистикийн арга техник, график төхөөрөмж (тухайлбал ggplot2 багц, зохиогч нь Hadley Wickham), импорт/экспортын боломжууд, тайлан гаргах хэрэгсэл (knitr, Sweave) гэх мэтээр өргөтгөх боломжтой. Тэдгээр багцууд голдуу R заримдаа Java, C, C++, Fortran хэл дээр бичигдсэн байдаг.[баримт хэрэгтэй]

R програмын суулгацад агуулагдах үндсэн багцуудаас гадна Comprehensive R Archive Network (CRAN),[33] Bioconductor, Omegahat,[34] GitHub болон бусад агуулахуудад (2017 оны 4 сарын байдлаар) 10500 нэмэлт багц байна.[35]

Гол үе шатууд[засварлах | кодоор засварлах]

R програмын өөрчлөлтийн түүхчилсэн жагсаалт CRAN дээр хадгалагдаж байдаг.[36] Тэдгээрээс заримыг онцлон дор жагсаав.

Release Date Description
0.16 This is the last alpha version developed primarily by Ihaka and Gentleman. Much of the basic functionality from the "White Book" (see S history) was implemented. The mailing lists commenced on April 1, 1997.
0.49 1997-04-23 This is the oldest source release which is currently available on CRAN.[37] CRAN is started on this date, with 3 mirrors that initially hosted 12 packages.[38] Alpha versions of R for Microsoft Windows and the classic Mac OS are made available shortly after this version.[баримт хэрэгтэй]
0.60 1997-12-05 R becomes an official part of the GNU Project. The code is hosted and maintained on CVS.
0.65.1 1999-10-07 First versions of update.packages and install.packages functions for downloading and installing packages from CRAN.[39]
1.0 2000-02-29 Considered by its developers stable enough for production use.[40]
1.4 2001-12-19 S4 methods are introduced and the first version for Mac OS X is made available soon after.
2.0 2004-10-04 Introduced lazy loading, which enables fast loading of data with minimal expense of system memory.
2.1 2005-04-18 Support for UTF-8 encoding, and the beginnings of internationalization and localization for different languages.
2.11 2010-04-22 Support for Windows 64 bit systems.
2.13 2011-04-14 Adding a new compiler function that allows speeding up functions by converting them to byte-code.
2.14 2011-10-31 Added mandatory namespaces for packages. Added a new parallel package.
2.15 2012-03-30 New load balancing functions. Improved serialization speed for long vectors.
3.0 2013-04-03 Support for numeric index values 231 and larger on 64 bit systems.

Интерфейсүүд[засварлах | кодоор засварлах]

Хамгийн өргөн хэрэглэгддэг R хэлний график интерфэйс бүхий хөгжүүлэлтийн цогц орчин бол RStudio юм. Үүнтэй ижил төстэй интерфэйс гэвэл R Tools for Visual Studio програмыг нэрлэж болно.

R хэлэнд зориулагдсан интерфейст мөн Crackle GUI, R Commander, RKWard багтана.

Өргөн хэрэглэгддэг зарим редактор R хэлийг дэмждэг. Тухайлбал Eclipse,[41] Emacs, Кейт,[42] LyX.[43] Notepad++,[44] WinEdt,[45] Tinn-Р.[46]

R хэлийг Python,[47] Perl,[48] Ruby,[49] F#[50] , Julia[51] зэрэг хэд хэдэн скрипт хэлнээс хандаж ашиглах боломжтой байдаг.

useR! хурал[засварлах | кодоор засварлах]

R хэрэглэгчдийн албан ёсны жил тутмын цугларалт бол  "useR!" юм.[52]

Үүний анхны арга хэмжээ useR! 2004 2004 оны тав дугаар сард Австри улсын Вена хотноо зохион байгуулагдсан.[53] Уг арга хэмжээ 2005 онд өнжсөнөөс хойш жил бүр Европ болон Хойд Америкт ээлжлэн зохион байгуулагдаж байна.[54]

Дараагийн хурлуудыг дор жагсаав:

R сэтгүүл[засварлах | кодоор засварлах]

R сэтгүүл нь R төслийн нээлттэй хандалттай, хөндлөнгийн хяналттай сэтгүүл юм. Энд R програмын хэрэглээ болон хөгжүүлэлт тухайлбал R хэлний багц, програмчлалын зөвлөмж, мэдээ зэрэг зүйлс хэвлэгддэг.

SAS, SPSS болон Stata програмуудтай харьцуулахад[засварлах | кодоор засварлах]

R програмыг SAS, SPSS, Stata зэрэг өргөн тархсан статистикийн програмуудтай нарийвчлан харьцуулах нь зүйтэй.[55] R нь статистикийн програмуудын харьцуулалт дээр статистикийн шилдэг програмуудтай хамт тэргүүн эгнээнд жагсдаг.

New York Times сонины 2009 оны 1 дүгээр сарын дугаарт өгөгдөл шинжээчдийн дунд R програм хүлээн зөвшөөрөгдөхийн зэрэгцээ SAS зэрэг арилжааны чанартай статистикийн програмын зах зээлд болзошгүй аюул учруулж буй талаар нийтлэл хэвлэгдсэн байдаг.[56]

Жишээ[засварлах | кодоор засварлах]

Бичигдэх хэлбэр[засварлах | кодоор засварлах]

Дараах жишээнд уг хэлний бичигдэх хэлбэр болон командын мөрнөөс ажиллах байдлыг харууллаа.[баримт хэрэгтэй]

R хэлэнд утга оноох оператор болох = тэмдэгтийн оронд <- хоёр тэмдэгтээс тогтох сумыг өргөн хэрэглэдэг.[57]

> x <- c(1,2,3,4,5,6)   # Create ordered collection (vector)
> y <- x^2              # Square the elements of x
> print(y)              # print (vector) y
[1]  1  4  9 16 25 36
> mean(y)               # Calculate average (arithmetic mean) of (vector) y; result is scalar
[1] 15.16667
> var(y)                # Calculate sample variance
[1] 178.9667
> lm_1 <- lm(y ~ x)     # Fit a linear regression model "y = f(x)" or "y = B0 + (B1 * x)"
                        # store the results as lm_1
> print(lm_1)           # Print the model from the (linear model object) lm_1

Call:
lm(formula = y ~ x)

Coefficients:
(Intercept)            x
     -9.333        7.000

> summary(lm_1)          # Compute and print statistics for the fit
                         # of the (linear model object) lm_1

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_1)             # Diagnostic plot of regression model

Функцийн бүтэц[засварлах | кодоор засварлах]

Хэрэглэгчийн функц зохиоход хялбар байдал нь R хэлний нэг давуу тал юм. Функцийн бие доторх объект функцийн дотоод хувьсагч болохын зэрэгцээ функцийн буцаах утга өгөгдлийн аль ч төрөл хэлбэрт байж болдог.[58] Функцийн бүтцийг харуулсан жишээг дор өгөв:

functionname <- function(arg1, arg2, ... ){ # функцийн нэр болон аргументуудыг зарлаж байна
  statements                                # тушаалууд
  return(object)                            # object объектыг функцийн утга болгон буцааж байна
}

sumofsquares <- function(x){ # хэрэглэгчийн үүсгэсэн функц
  return(sum(x^2))           # x векторын элементүүдийн квадратуудын нийлбэрийг буцааж байна
}
> sumofsquares(1:3)
[1] 14

Mandelbrot олонлог[засварлах | кодоор засварлах]

R хэл дээрх дараах богинохон код c комплекс тогтмолын янз бүрийн утганд харгалзах z = z2 + c тэгшитгэлийн эхний 20 итерацаар Mandelbrot олонлогийг дүрслэн үзүүлнэ. Мөн энэ жишээ дараах зүйлсийг харуулна:

  • энд caTools багцын хэрэглээ
  • комплекс тоон дээрх үйлдэл
  • тоон элементүүдээс тогтох олон хэмжээст массивын хэрэглээ (C, Z , X).
    install.packages("caTools")  # багц суулгах тушаал
    library(caTools)             # write.gif функц ашиглахаар харгалзах багцыг дуудаж байна
    jet.colors <- colorRampPalette(c("#00007F", "blue", "#007FFF", "cyan", "#7FFF7F",
                                     "yellow", "#FF7F00", "red", "#7F0000"))
    dx <- 400                    # урт
    dy <- 400                    # өргөн
    C <- complex( real=rep(seq(-2.2, 1.0, length.out=dx), each=dy ),
                  imag=rep(seq(-1.2, 1.2, length.out=dy), dx ) )
    C <- matrix(C,dy,dx)         # комплекс тоонуудыг матриц хэлбэрт шилжүүлэх
    Z <- 0                       # Z хувьсагчид 0 утга оноох
    X <- array(0, c(dy,dx,20))   # гаралтанд ашиглах 3 хэмжээст массивыг үүсгэж байна
    for (k in 1:20) {            # 20 итерац бүхий давталт
      Z <- Z^2+C                 # итерац
      X[,,k] <- exp(-abs(Z))     # үр дүнг хадгалах
    }
    write.gif(X, "Mandelbrot.gif", col=jet.colors, delay=900)
    

Санал болгох бусад мэдээлэл[засварлах | кодоор засварлах]

Цахим холбоос[засварлах | кодоор засварлах]

 Commons: R – Викимедиа зураг, бичлэг, дууны сан

Ашигласан материал[засварлах | кодоор засварлах]

  1. Загвар:Cite techreport
  2. Hornik, Kurt (November 26, 2015). "R FAQ". The Comprehensive R Archive Network. 2.1 What is R?. Retrieved 2015-12-06.
  3. "R News". CRAN. Retrieved 22 April 2017.
  4. "R license". r-project. Retrieved 6 June 2016.
  5. R language and environment
    • Hornik, Kurt (November 26, 2015). "R FAQ". The Comprehensive R Archive Network. 2.1 What is R?. Retrieved 2015-12-06.
    R Foundation
    • Hornik, Kurt (November 26, 2015). "R FAQ". The Comprehensive R Archive Network. 2.13 What is the R Foundation?. Retrieved 2015-12-06.
    The R Core Team asks authors who use R in their data analysis to cite the software using:
    • R Core Team (2016). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL http://www.R-project.org/.
  6. widely used
  7. Vance, Ashlee (2009-01-06). "Data Analysts Captivated by R's Power". New York Times. Retrieved 2009-04-28. 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...
  8. R's popularity
  9. GNU project
    • "GNU R". Free Software Foundation (FSF) Free Software Directory. 19 July 2010. Retrieved 13 November 2012.
    • R Project (n.d.). "What is R?". Retrieved 2009-04-28.
  10. "Wrathematics" (27 August 2011). "How Much of R Is Written in R". librestats. Retrieved 2011-12-01.
  11. "7 of the Best Free Graphical User Interfaces for R". linuxlinks.com. Retrieved 9 February 2016.
  12. "R: What is R?". R-Project. Retrieved 7 February 2016.
  13. Gentleman, Robert (9 December 2006). "Individual Expertise profile of Robert Gentleman". Archived from the original on 23 July 2011. Retrieved 2009-07-20.
  14. Kurt Hornik. The R FAQ: Why is R named R?. ISBN 3-900051-08-9. Retrieved 2008-01-29.
  15. "R : Past and Future History -- A Free Software Project". cran.r-project.org. Retrieved 2016-05-30.
  16. "Over 16 years of R Project history". Revolutions. Retrieved 2016-05-30.
  17. Ihaka, Ross. "The R Project: A Brief History and Thoughts About the Future" (PDF). stat.auckland.ac.nz.
  18. "Судалгаанд статистикийн аргыг хэрэглэх нь сэдэвт сургалт амжилттай болж өндөрлөлөө". news.num.edu.mn. Retrieved 2016-11-29.
  19. "Монголын R хэрэглэгчдийн групп". facebook.com. Retrieved 2017-05-19.
  20. "МУИС Пресс хэвлэлийн газар". mongolbooks.com. Retrieved 2017-05-19.
  21. "www.magadlal.mn". magadlal.mn. Archived from the original on 2017-12-17. Retrieved 2017-05-19.
  22. Eddelbuettel, Dirk; Francois, Romain (2011). "Rcpp: Seamless R and C++ Integration". Journal of Statistical Software. 40 (8). doi:10.18637/jss.v040.i08.
  23. Temple Lang, Duncan (6 November 2010). "Calling R from Java" (PDF). Nuiton. Retrieved 18 September 2013.
  24. .NET Framework
  25. Intellipaat. "Choosing between SAS, R and Python for Big Data Solution - Intellipaat Blog". intellipaat.com. Retrieved 2 December 2016.
  26. Jackman, Simon (Spring 2003). "R For the Political Methodologist" (PDF). The Political Methodologist. Political Methodology Section, American Political Science Association. 11 (1): 20–22. Archived from the original (PDF) on 2006-07-21. Retrieved 2006-08-03.
  27. "CRAN Task View: Graphic Displays & Dynamic Graphics & Graphic Devices & Visualization". The Comprehensive R Archive Network. Archived from the original on 2016-09-26. Retrieved 2011-08-01.
  28. "Rd format". hep.by. Archived from the original on 13 Есдүгээр сар 2018. Retrieved 9 February 2016.
  29. Dalgaard, Peter (2002). Introductory Statistics with R. New York, Berlin, Heidelberg: Springer-Verlag. pp. 10–18, 34. ISBN 0387954759.
  30. Ihaka, Ross; Gentlman, Robert (Sep 1996). "R: A Language for Data Analysis and Graphics" (PDF). Journal of Computational and Graphical Statistics. American Statistical Association. 5 (3): 299–314. doi:10.2307/1390807. Retrieved 2014-05-12.
  31. "Data structures · Advanced R." adv-r.had.co.nz. Retrieved 2016-09-26.
  32. R Core Team. "Print Values". R Documentation. R Foundation for Statistical Computing. Retrieved 30 May 2016.
  33. "The Comprehensive R Archive Network".
  34. "Omegahat.net". Omegahat.net. Retrieved 2016-09-09.
  35. packages available from repositories
  36. Changes in versions 3.0.0 onward:
  37. "Index of /src/base/R-0".
  38. "ANNOUNCE: CRAN".
  39. https://cran.r-project.org/src/base/NEWS.0
  40. Peter Dalgaard. "R-1.0.0 is released". Retrieved 2009-06-06.
  41. Unknown. "StatET for R". Archived from the original on 2016-09-26. Retrieved 2017-05-18.
  42. "Syntax Highlighting". Kate Development Team. Archived from the original on 2008-07-07. Retrieved 2008-07-09.
  43. Paul E. Johnson and Gregor Gorjanc. "LyX with R through Sweave". Retrieved 2017-04-04.
  44. "NppToR: R in Notepad++". sourceforge.net. 8 May 2013. Retrieved 2013-09-18.
  45. Uwe Ligges. "RWinEdt: R Interface to 'WinEdt'". Retrieved 2017-04-04.
  46. "Tinn-R". Archived from the original on 2015-07-13. Retrieved 2017-04-04.
  47. Gautier, Laurent (21 October 2012). "A simple and efficient access to R from Python". Retrieved 18 September 2013.
  48. Florent Angly. "Statistics::R - Perl interface with the R statistical program - metacpan.org".
  49. alexgutteridge. "GitHub - alexgutteridge/rsruby: Ruby - R bridge". GitHub.
  50. BlueMountain Capital. "F# R Type Provider".
  51. https://github.com/JuliaInterop/RCall.jl. {{cite web}}: Missing or empty |title= (help)
  52. "useR!"
  53. "useR! 2004 - The R User Conference". 27 May 2004. Archived from the original on 2013-09-14. Retrieved 2013-09-18.
  54. R Project (9 August 2013). "R-related Conferences". Archived from the original on 2015-06-29. Retrieved 2013-09-18.
  55. Burns, Patrick (27 February 2007). "Comparison of R to SAS, Stata and SPSS" (PDF). Retrieved 2013-09-18.
  56. R as competition for commercial statistical packages
  57. R Development Core Team. "Assignments with the = Operator". Retrieved 14 June 2012.
  58. Kabacoff, Robert (2012). "Quick-R: User-Defined Functions". statmethods.net. Retrieved 2013-10-28.
  59. Ostrouchov, G., Chen, W.-C., Schmidt, D., Patel, P. (2012). "Programming with Big Data in R".{{cite web}}: CS1 maint: multiple names: authors list (link)