Hvis du skal vælge mellem Python og R, vil det projekt, du har planlagt, være en afgørende faktor. Mens R er bedre til statistik og vi­su­a­li­se­ring af re­sul­ta­ter, har Python en bred vifte af funk­tio­ner og løsninger.

Hvad er Python og R?

Hvis du vil lære at pro­gram­me­re og leder efter et sprog, der er godt til forsk­nings­ar­bej­de med analyser og statistik, vil du før eller senere støde på Python og R. De to pro­gram­me­rings­sprog bruges ofte inden for da­ta­vi­den­skab, prædiktiv analyse og da­ta­vi­su­a­li­se­ring, og begge har store bru­ger­fæl­les­ska­ber. Ved første øjekast har de meget til fælles, men vi vil også komme ind på deres forskelle nedenfor.

Hvad er fordelene og ulemperne ved R?

R har fået sit navn fra ud­vik­ler­ne Ross Ihaka og Robert Gentleman. Disse to sta­ti­sti­ke­re ved Uni­ver­si­ty of Auckland udviklede og udgav sproget i be­gyn­del­sen af 1990’erne. Deres mål var at skabe et sprog, der kunne udføre og vise komplekse sta­ti­sti­ske analyser. Den op­rin­de­li­ge målgruppe var personer med om­fat­ten­de viden om statistik og pro­gram­me­ring. R er baseret på pro­gram­me­rings­spro­get S og er en gratis im­ple­men­te­ring.

R kan kom­pi­le­res og kører på UNIX-platforme, Linux, Windows og Mac. Det bruges ho­ved­sa­ge­ligt til udvikling af sta­ti­stiksoftwa­re og udførelse af dyb­de­gå­en­de da­ta­a­na­ly­se. Takket være sine mange bi­bli­o­te­ker kan R også bruges til grafisk visning af data. Sproget er open source og en del af GNU-projektet. Selvom R tidligere primært blev brugt i aka­de­mi­ske sam­men­hæn­ge, kan det nu prale af in­te­gra­tion med en række andre sprog og pro­gram­mer og bruges af mange virk­som­he­der.

Fordele ved R

  • Open source: R er et sprog for alle, i hvert fald hvad angår pris og til­gæn­ge­lig­hed. Det er helt gratis og open source. Det betyder, at det er muligt at bruge eller bygge videre på det, alt efter hvad dit projekt kræver.
  • Omfang: Det faktum, at R er open source, betyder også, at der findes en række bru­ge­ra­dap­ta­tio­ner, der er gjort frit til­gæn­ge­li­ge. Chancen for, at der allerede findes en løsning på dit problem, er relativt stor. Udviklere har allerede skabt omkring 20.000 pakker baseret på R, som ofte kan levere skræd­der­sy­e­de løsninger inden for spe­ci­a­li­se­re­de fag­om­rå­der.
  • Kom­pa­ti­bi­li­tet: R fungerer på en række for­skel­li­ge platforme og har græn­se­fla­der til for­skel­li­ge andre sprog og databaser. Så du kan nemt bruge R til en del af dit projekt og integrere det i en større sam­men­hæng.
  • Bru­ger­græn­se­fla­de: Der er udviklet en grafisk græn­se­fla­de for at øge sprogets bru­ger­ven­lig­hed. Græn­se­fla­den, der hedder Rstudio, gør det be­ty­de­ligt nemmere at arbejde med R-kode, hvilket betyder, at projekter kan im­ple­men­te­res hurtigere. Pakker som Plotly gør det også nemmere at skabe vi­su­a­li­se­rin­ger i form af grafik og di­a­gram­mer.
  • Fæl­les­skab: R har et en­tu­si­a­stisk fæl­les­skab bag sig. Mange R-brugere er eksperter inden for deres felt og kan give vær­di­ful­de tips til at løse dine problemer. Det store fæl­les­skab betyder også, at der er rigelig do­ku­men­ta­tion og de ekstra pakker og bi­bli­o­te­ker, vi nævnte ovenfor.

Ulemper ved R

  • Ydeevne: R er ikke et langsomt eller svagt sprog, men du kan opleve for­sin­kel­ser, når det drejer sig om større datasæt. En af årsagerne hertil er dets single thread-be­hand­ling, som kun kan bruge én CPU ad gangen.
  • Læ­rings­kur­ve: Da R normalt tilbydes uden en grafisk græn­se­fla­de, kan det være forbundet med en stejl læ­rings­kur­ve. Det kan tage et stykke tid at få styr på de for­skel­li­ge no­ta­tions­reg­ler, be­græns­nin­ger og særheder ved sproget. Kendskab til statistik er også en vigtig for­ud­sæt­ning for at arbejde med R. Se vores R-tutorial for begyndere for at få et første indtryk af sproget.

Hvad er fordelene og ulemperne ved Python?

Python er be­ty­de­ligt mere kendt end R og bruges af millioner af mennesker over hele verden. Sproget blev udviklet i 1991 af Guido van Rossum og har altid haft som mål at levere den mest enkle kode muligt. Mange termer i sproget er taget direkte fra engelsk, hvilket gør det lettere at forstå. Python-kode er også meget klar og let at læse. Det er plat­formsu­af­hæn­gigt og ob­jekt­o­ri­en­te­ret. Takket være det store community og open source-tilgangen har det ad­skil­li­ge pakker inden for områderne deep learning, AI og da­ta­vi­den­skab. Se vores Python-tutorial for at få et nærmere kig på sproget.

Fordele ved Python

  • Al­si­dig­hed: Python er et alsidigt sprog i enhver forstand. Det kan bruges inden for en række områder og gør det dermed muligt at tage en holistisk tilgang til projekter. Det er også plat­formsu­af­hæn­gigt, hvilket betyder, at det kan bruges på en række systemer. Og det har ad­skil­li­ge græn­se­fla­der til andre pro­gram­mer, sprog og databaser.
  • Open source: Ligesom R er Python også open source og frit til­gæn­ge­ligt. Den fortsatte udvikling af Python ko­or­di­ne­res af Python Software Fo­un­da­tion, men alle brugere kan tilpasse sproget til deres egne projekter.
  • Omfang: Python-brugere har udviklet en lang række pakker. Der er over 300.000 løsninger til­gæn­ge­li­ge til download. Det gør arbejdet med de fleste projekter be­ty­de­ligt nemmere.
  • Læ­rings­kur­ve: Python er et af de enkleste pro­gram­me­rings­sprog, der findes. På trods af dets im­po­ne­ren­de an­ven­del­ses­om­rå­de kan det læres og bruges på relativt kort tid. Koden er også relativt klar, hvilket gør det lettere at arbejde i teams og im­ple­men­te­re små projekter på egen hånd.
  • Fæl­les­skab: Python har et stort fæl­les­skab, der konstant skaber do­ku­men­ta­tion og bi­bli­o­te­ker. Det er kendt for at være hjælpsomt og støttende, så hvis du har spørgsmål eller problemer, vil du sand­syn­lig­vis finde nogen, der kan hjælpe dig.

Ulemper ved Python

  • Ydeevne: Som et dynamisk sprog kunne Python bestemt være hurtigere. Det gælder især, når det drejer sig om store datasæt, hvilket får mange pro­gram­mø­rer til at søge efter al­ter­na­ti­ver i sådanne tilfælde.
  • Fejl: Python er ikke et særligt fejl­be­hæf­tet sprog, men hvis du har lavet en fejl i koden, opdager du det først ved kørsel. Re­gel­mæs­sig og om­fat­ten­de testning er derfor meget vigtigt, når man arbejder med Python.
  • Vi­su­a­li­se­ring: Python mangler også noget, når det kommer til vi­su­a­li­se­ring af sta­ti­sti­ske værdier og re­sul­ta­ter. Der er kun få værktøjer, der kan levere virkelig til­freds­stil­len­de re­sul­ta­ter.
  • Mobile enheder: Python er ikke optimalt til brug på mobile enheder. Selvom der findes nogle få løsninger til dette, vælger de fleste ap­pud­vik­le­re et al­ter­na­tivt sprog med indbygget kom­pa­ti­bi­li­tet med Android og iOS.

Hvad er for­skel­len mellem Python og R?

Nu hvor vi har set på de to sprog hver for sig, vil vi se på nogle af for­skel­le­ne mellem Python og R.

Syntaks

For­skel­le­ne mellem de to sprogers syntaks kan ses med det samme. R ser sådan ud:

$ R
> myString <- "Hello! You’re using R."
> print (myString)
r

Python er lidt mere kort­fat­tet:

>>> print("Hello! You’re using Python.")
python

Andre forskelle mellem Python og R

Ud over syntaksen er der nogle få andre vigtige forskelle mellem Python og R.

  • An­ven­del­se: De to sprog har meget for­skel­li­ge tilgange. R er primært beregnet til sta­ti­sti­ske analyser og vi­su­a­li­se­rin­ger og er meget godt til dette. Python har en langt mere om­fat­ten­de tilgang og er også velegnet til pro­gram­me­ring af software og deep learning.
  • Omfang og po­pu­la­ri­tet: Flere og flere mennesker bruger R uden for den aka­de­mi­ske verden, men sproget har stadig sine rødder i vi­den­ska­ben. Python bruges af be­ty­de­ligt flere udviklere. Det betyder, at Python har langt flere pakker end R.
  • Ydeevne: Hverken R eller Python er det hurtigste sprog på markedet. Python er dog lidt hurtigere og mere kraft­fuldt end R.
  • Formater: Mens Python kan arbejde med en række for­skel­li­ge da­ta­for­ma­ter, er R mere begrænset. CSV-, Excel- og tekst­fi­ler er de eneste formater, det un­der­støt­ter uden yder­li­ge­re værktøjer.

Python vs. R: Hvilket sprog skal du lære?

Så hvilket sprog er bedst, Python eller R? De er begge meget kraft­ful­de sprog, så svaret afhænger i høj grad af, hvad du har tænkt dig at gøre. Hvis du primært ønsker at oprette og vi­su­a­li­se­re sta­ti­sti­ske modeller, er R det bedste valg. Hvis dit projekt går ud over statistik, giver Python dig langt flere mu­lig­he­der.

Gå til ho­ved­me­nu­en