11 llenguatges de programació de ciència de dades que cal conèixer el 2021

Al famós diagrama de Venn d’habilitats en ciències de dades de Drew Conway, la programació pot ser l’objectiu més esquivat. Contínuament estan sorgint noves biblioteques i paquets i, de vegades, fins i tot entren en escena llenguatges de programació nous.

És cert que Python continua dominant. Però, malgrat la seva base generalitzada i la seva facilitat d’ús, gairebé no té el monopoli de la ciència de dades. I les alternatives s’estenen molt més enllà de R, malgrat el que els partidaris del cansat Python vs. El debat R podria fer-vos pensar.

Quin llenguatge de programació és millor per a la ciència de dades?

Python és extremadament popular en ciència de dades gràcies a la seva sintaxi intuïtiva, gran nombre de recursos i una àmplia col·lecció de biblioteques per a l’anàlisi, la visualització i l’aprenentatge automàtic. R també segueix sent àmpliament utilitzat i admirat per les seves capacitats de mineria de dades i d’anàlisi estadística i una robusta comunitat de suport. I el coneixement d’SQL és crucial per consultar dades. Els idiomes tangencialment relacionats amb la ciència de dades inclouen Javascript, que és beneficiós per a la visualització de dades avançada, mentre que els nouvinguts com Julia i Swift representen alternatives emergents, encara que menys establertes.

Tenint això en compte, vam reunir una breu llista de llenguatges de programació de ciència de dades notables, juntament amb un desglossament dels seus punts forts i febles. Molt d’això serà un barret antic per als professionals experimentats, però qualsevol que necessiti una enquesta ràpida del paisatge hauria de seguir llegint.

Python

Ja sigui el llenguatge de programació més popular del món o simplement entre els tres primers, sens dubte Python ha crescut en els últims anys. Tot i que fa 30 anys que existeix, el llenguatge finalment va començar a agafar-se més àmpliament al voltant del 2007, quan es va llançar Dropbox amb Python, proporcionant una àmplia prova de concepte del món real dels seus punts forts. (I el fet que Google iniciés la sessió al mateix temps també va ser enorme.) Però enlloc la popularitat de Python és més evident que en els cercles de ciències de dades, on sovint es considera el recurs.

Python s’ha utilitzat àmpliament per diverses raons. Prioritza la llegibilitat, està escrit de manera dinàmica i té una sintaxi intuïtiva, cosa que fa que sigui relativament fàcil d’aprendre i utilitzar. A més, té un ecosistema de biblioteques increïblement ric per al preprocessament i anàlisi de dades (NumPy, SciPy, Pandas), visualització (Matplotlib, Seaborn, Bokeh) i molt més. Potser el més notable és que a mesura que l’aprenentatge automàtic i l’aprenentatge profund van madurar i van créixer, també ho va fer Python, que va afegir plataformes i biblioteques de conca hidrogràfica com scikit-learn, Keras, PyTorch desenvolupat per Facebook i TensorFlow desenvolupat per Google.

I a mesura que la tracció de Python s’ha consolidat, també ho han fet els seus recursos de suport. L’idioma té una gran comunitat de suport dedicada i una gran quantitat de llibres i camps d’entrenament i cursos específics de Python; tots els motius, potser, l’idioma arriba regularment entre els “més estimats” a les enquestes anuals de desenvolupadors de Stack Overflow.

RelacionatsDataOps està aquí per quedar-se

r llenguatges de programació de ciència de dadesR

Tot i que la seva reputació com a menys que desitjable per a la producció és una paraula inadequada, R encara es considera el més adequat per a la mineria de dades i l’anàlisi estadística, de les quals ofereix una àmplia gamma d’opcions. (De fet, l’estat favorit de R entre els estadístics és una mica crònic mateix-generator.) També es considera més accessible que Python per als no desenvolupadors, ja que és possible crear un model estadístic i una visualització nítida amb només unes poques línies de codi.

R també té una robusta constel·lació de paquets. El més notable és la família tidyverse, creada per la icona de la comunitat R Hadley Wickham. Compta amb paquets populars per organitzar dades (tidyr), munging data (dplyr) i visualització (el innovador ggplot2).

El podeu veure en acció a través del molt estimat projecte #TidyTuesday. Cada setmana, s’allibera un nou conjunt de dades perquè els científics de dades practiquen i demostrin les seves habilitats de visualització i discussió de dades. És el tipus d’aprenentatge (i perfeccionament) en públic que també és emblemàtic de la famosa comunitat de suport (i inclusiva) de R.

Llenguatges de programació Julia Data ScienceJúlia

S’ha parlat molt del ràpid ascens de Julia en els cercles de la ciència de dades durant els últims anys, i per una bona raó. Ara és un dels 20 primers idiomes del rànquing IEEE Spectrum i també va esclatar els 20 primers de l’influent índex TIOBE l’any passat. (A l’hora d’escriure, es troba al número 28).

Tal com va assenyalar el desenvolupador Anupam Chugh a Built In, Julia és més ràpida que Python; dinàmic, però més segur de tipus (gràcies al seu compilador just-in-time i al seu enviament múltiple); i millor equipat per a la computació distribuïda i paral·lela.

Aquest poder l’ha convertit en una opció emergent per a l’anàlisi de big data en el sector privat (BlackRock, Apple, Oracle i Google són tots usuaris) i, especialment, per a la investigació científica, on s’està utilitzant en projectes destacats de modelització climàtica, predicció del temps. i estudis astronòmics, entre d’altres. La seva àmplia interoperabilitat, compatible amb tot, des de Python fins a Fortran de la vella escola, i el seu impuls continuat des del MIT, on té arrels, també fan que Julia sigui una probable candidata a llarg termini. I com Python, també reuneix molt d’amor.

c llenguatges de programació de ciència de dadesC/C++

El venerable llenguatge de propòsit general C i el seu cosí orientat a objectes, C++, gairebé no es consideren imprescindibles per a la ciència de dades general, però tots dos de vegades apareixen a les llistes de feina per a funcions d’enginyeria d’aprenentatge automàtic. Això pot tenir a veure amb el fet que les principals biblioteques de ML PyTorch i Tensorflow estan escrites en gran part en C++ de baix nivell, fins i tot si la majoria dels professionals els utilitzen amb Python. (Pytorch es considera més “pitònic”, però l’embolcall de Python és essencialment això.)

RelacionatsAixí és com es veu el futur de les dades

llenguatges de programació de ciència de dades javaJava

Un altre llenguatge orientat a objectes, el Java “escriure una vegada, executar-se en qualsevol lloc” està més associat al desenvolupament web, però té un paper destacat en contextos de dades, en gran part perquè les màquines virtuals Java (JVM) són un component comú en el big data. marcs. L’ecosistema Apache Hadoop (inclosos Hive, Spark i MapReduce) depèn de JVM, la qual cosa significa que almenys una familiaritat passada serà útil per executar de manera eficient treballs de dades que requereixen grans requisits d’emmagatzematge i processament.

Llenguatges de programació scala data scienceScala

Parlant de Java, Scala va ser dissenyat explícitament per ser una alternativa més neta i menys pronunciada a aquest llenguatge popular. “Podeu escriure centenars de línies de codi Java d’aspecte confús en menys de 15 línies a Scala”, va escriure Packt. Dissenyat a Suïssa i llançat l’any 2004, Scala s’executa amb les mateixes JVM esmentades anteriorment, cosa que la converteix en una adaptació pràctica per a projectes distribuïts de grans dades i canalitzacions de dades. Un enginyer de programari principal de Hiya, amb seu a Seattle, va dir a Built In el 2019 que havia creat projectes de dades a escala de petabytes a Scala.

llenguatges de programació de ciència de dades javascriptJavaScript

La mateixa raó per la qual JavaScript segueix sent un cavall de batalla de programació web (és la capacitat d’especificar el comportament de la pàgina) també és el que el fa fantàstic per a la visualització de dades. Per exemple, D3.js, una de les biblioteques de visualització més versàtils per crear una biblioteca dinàmica i interactiva, és una biblioteca de JavaScript. Així, com més familiaritzat estiguis, més granular podràs fer presentacions d’estil Observable.

Llenguatges de programació SQL Data ScienceSQL

De vegades, SQL ni tan sols es considera un llenguatge de programació adequat, ja que és específic del domini. Això és una tonteria, per descomptat, i només perquè no pugueu, per exemple, crear una aplicació amb SQL no vol dir que no s’hagi de saber. Es poden afegir extensions SQL per permetre que processos més complexos s’executin juntament amb una base de dades, però s’utilitza principalment com a forma de comunicar-se amb bases de dades relacionals. La majoria dels científics de dades no es comprometran amb l’administració real de la base de dades, però consultar les dades i poder investigar els matisos de com les dades poden ser manipulades per la base de dades són habilitats crucials.

llenguatges de programació Swift Data ScienceRàpid

Fidel al seu nom, aquest llenguatge compilat desenvolupat per Apple es va guanyar ràpidament una reputació de velocitat després de fer el seu debut públic el 2014. (Com els llenguatges emergents de la mateixa manera Rust i Clang, Swift es basa en el potent marc de compilació LLVM). En el que s’ha assenyalat anteriorment, els cercles d’aprenentatge automàtic han tingut especial atenció per algunes raons: Swift és interoperable amb Python, i Google, que una vegada va ajudar a establir la popularitat de Python, dóna suport a Swift. (El creador del programa es va unir a un dels principals equips de recerca d’aprenentatge profund de Google el 2017.)

Llenguatges de programació de ciència de dades de matlabMATLAB

Quan aquest llenguatge de programació es va llançar el 1984, va trobar primers usuaris al MIT i Stanford. Gairebé 40 dècades després, continua fortament associat amb el món acadèmic i els laboratoris de recerca científica. (Sí té un ús comercial, és a dir, en aplicacions de ciència de dades en automoció, robòtica i aeroespacial.) MATLAB és en realitat un llenguatge en part i un entorn de treball en part, amb espai per desenvolupar i validar nous algorismes. Les caixes d’eines (o biblioteques de funcions específiques de l’aplicació) són un altre component central. Un inconvenient: MATLAB és propietari. Però podeu obtenir molt del que va fer que el llenguatge sigui notable fa anys, com ara la trama intuïtiva, a partir de diverses alternatives gratuïtes i de codi obert. Així, tot i que continua sent un nínxol i gairebé no és imprescindible per a la majoria dels científics de dades que treballen, la seva resistència, especialment en alguns racons de recerca d’educació superior, significa que no s’hauria d’ometre a l’hora de considerar el paisatge.

Llenguatges de programació de ciència de dades sas.SAS

Un altre llenguatge propietari que ha estat fortament suplantat per Python i R, SAS està a diverses unitats de ser considerat un coneixement previ per a la ciència de dades contemporània. Però, sens dubte, val la pena tenir-ne compte, ja que encara ho trobareu en ofertes de treball esporàdiques per a funcions de ciència de dades o analistes, sobretot en indústries on de vegades persisteixen els sistemes de la vella escola, com ara les finances, la fabricació pesada o la sanitat. Tal com va assenyalar anteriorment l’economista i especialista en ciències de dades Edward Hearn a Built In, encara estem vivint en un estat de tensió on la preferència pel codi obert no para de augmentar, mentre que les botigues heretades (no sense raó) pensen que idiomes com SAS ho fan bé per a l’anàlisi. codi, si no codi de producció, la qual cosa fa que el cost de la infraestructura del programari se senti massa elevat. Presumiblement, aquesta tensió es trencarà algun dia. De moment, n’hi ha prou amb mantenir SAS al radar.

.

Leave a Comment

Your email address will not be published. Required fields are marked *