Beste svaret
Jeg vil være spesifikk og si at R er bra for dataanalyse, spesielt hvis du følger den «moderne R» -utviklingen i stedet av innfødte R. Jeg synes økosystemet er veldig attraktivt. Her er noen av tingene som gjør at R skiller seg ut.
- R er gratis, sammenlignet med annen populær programvare for statistikk / dataanalyse som SAS eller Matlab.
- R var designet for å håndtere tabelldata i dataanalyse. (Det ble aldri designet som et generelt språk som python, så de er egentlig ikke sammenlignbare.)
- R har noen av de beste datamanipuleringene, datavisualiseringen, resultatrapporteringsfunksjonene. Ting som tidyverse (dplyr, tidyr, ggplot2 etc.), data.table, Rmarkdown, skinnende app etc. Det er lignende ting i Python, men ikke så bra eller lett å bruke. Visualiseringspakken ggplot2 ser bare så bra ut og kan håndtere veldig komplisert plotting. Noen mennesker kan bruke R bare for ggplot2. Det er også nettbaserte grafikkpakker som plott osv.
- Rstudio IDE. Det er rett og slett fantastisk. Jeg vil si at Rs attraktivitet vil bli kuttet minst halvparten hvis Rstudio ikke eksisterer. Hvordan jeg skulle ønske at python har noe så pent, enkelt å bruke og kraftig. (Spyder er nær, bare ikke der ennå.)
- Kommersiell utvikling av Rstudio. Profittdrevet utvikling er avgjørende for den langsiktige helsen til R-økosystemet. R har et sterkt fellesskap av brukere, og det sterke engasjementet fra selskapet Rstudio. Jeg tror den nylige innsatsen fra Rstudio har gjort R tiltalende miljø som andre. Det betyr det fantastiske Rstudio IDE-miljøet, integrert med Rmarkdown, Rbookdown, feilsøkingsverktøy, skinnende app osv. Rstudio hyret også noen av de viktigste R-utviklerne som Hadley Wickham, Max Kuhn, Yihui Xie etc. som regnes som sjelene til moderne R. Den fine tingen er når disse menneskene ble med i Rstudio, deres R-pakker, som strikk, devtools osv. Også forbedres og integreres for en bedre arbeidsflyt.
- Til slutt, hvis du allerede har hoppet på skipet av R, er det ikke vanskelig å bruke ferdighetene dine på python. Python, som språk, er lettere å lære enn R. Med tankegangen til dataanalyse trent i R, kan lignende ferdigheter overføres til python ganske raskt.
Hvis noen vil ha noe ideen om å jobbe på moderne R-måte, kan Hadleys ferske bok «R for data science» tjene som en veldig fin introduksjon. Følg også utviklingen av Rstudio, siden de kontinuerlig legger til nye ting som gjør bruk av R til en veldig hyggelig opplevelse.
Svar
Som Paulina Jonušaitė påpekte, er R bra fordi det ble designet for statistikere av statistikere, og mens statistikere ikke er kompetente språkdesignere – definitivt ikke nok til å lage et design av et språk sammenhengende og forutsigbart – viser det seg tilsynelatende at i gjennomsnitt språket gjør som man forventer (eller i det minste ofte nok til at folk som bare hadde en overfladisk kontakt med det vanligvis ikke merker det inkoherens).
R-programmeringsspråk ble designet ved å ta et veldig godt programmeringsspråk som heter Scheme, og kaste inn litt merkelig syntaks og oppførsel for å gjøre det, uhm, mer tiltalende for statistikere. Så hvis det er en følelse av godhet i det språket, må det komme fra skjemaet.
Du kan finne noen referanser i Panicz Godeks svar på Hvorfor er syntaksen til R så (dårlig) forskjellig fra andre programmeringsspråk?