Kom i gang med Jupyter Notebooks

Illustration: Bigstock/Golden Sikorka
Det er nemt at skabe levende data-dokumenter med Python-kode, tekst og visualiseringer.

Jupyter, som er vokset ud af Python-distributionen IPython (som ikke skal forveksles med .Nets’ implementation af sproget, der går under navnet IronPython), er på få år blevet meget populært inden for dataanalyse.

Jupyters formål er at understøttet datavidenskab og videnskabelig programmering med Python og andre sprog, såsom R. Det, der trækker udviklerne ind i butikken, er blandt andet såkaldte 'Notebooks', der kombinerer kode, data, visualisering og tekst i et dokument.

»Det gør én i stand til at dokumentere dine eksperimenter. Man kan sige, at problemstillingen hidtil har været, når man skal lave dataanalyser, at du havde en papirblok hvor du skulle skrive hvad du gjorde ved de forskellige typer af eksperimenter.«

Det fortæller Søren Aagaard Mikkelsen, som er data scientist i konsulentfirmaet Mjølner.

Tekst, kode og visualisering

Notebooks er en slags webapp, som kører i browseren fra en lokal eller fjern Notebook-server. Man kan redigere i dokumentet med et klik, og indsætte tekst, kode, som også kan vise visuelle uddata i dokumentet, eller andre slags elementer, ‘widgets’, der kan tilføre anden slags funktionalitet.

Det er død-nemt at installere Jupyter Notebooks, som i øvrigt er open source. På Windows skal man blot downloade og installere distributionen Anaconda, som er en data-orienteret udgave af Python tillige med andre sprog. Efter installationen kan man finde Jupyter Notebooks i Windows-menuen. Så startes en notebook-server og browseren åbner en webside på port 8888.

Tekst skrives med Markdown, som er simpelt og nemt. Data kan importeres med Python-biblioteker, og kan på denne vis inkludere stort set alle slags datakilder – fra tekst- og csv-filer til database-servere.

Jupyter Notebooks er dokumenter, som vises fra en indbygget lokal webserver og vises og redigeres i browseren. Dokumentet kan bestå af tekst i Markdown-format, kode, visualisering og widgets, der kan tilføje funktionalitet. Illustration: Version2

Notebooks er opbygget af celler, som kan indeholde markdown eller kode. Man kan benytte flere sprog, men her i eksemplet er det bare Python 3, som også er udgangspunktet i programmet. I menuen Cell kan man vælge Cell Type, som enten Code eller Markdown.

Når koden eller Markdown er skrevet i cellen, afvikles koden med skift+retur-tasten, som også får Markdown-koden til at rendere. Man kan også bare klikke på Run-knappen i menu-linjen.

I eksemplet herover, har vi en celle med Markdown-tekst, som er et simpelt opmærkningssprog, der blandt andet bruges på Github. Den kan også indeholde fancy matematiske formler med Latex-notation.

I næste celle har vi en stump Python-kode, som visualiserer en Sombrero-hat. Det er det såkaldt 'magiske' direktiv %matplotlib notebook, der gør at resultatet kan plottes i Notebook'en. Sombreroen kan trækkes rundt i tre dimensioner med musen.

Widgets giver mere funktionalitet

Man kan også installere widgets, som tilfører ny funktionalitet i Notebook'en. Her har vi installeret Ipyleaflet, som viser en kort-widget med billeddata fra Openstreetmap. På widget'ens hjemmeside står der også, hvordan man installerer den, så det er piv-nemt at have med at gøre.

Det gøres med Anacondas installationsprogram Conda, men det kunne vi ikke få til at virke. Så i stedet brugte vi Pythons installationsprogram Pip, som også følger med, og så gik det godt. På vores maskine findes programmerne, som afvikles i en terminal, i mappen C:\Users\tan\AppData\Local\Continuum\anaconda3\Scripts.

En kort-widget kan vise et kort ud fra et par linjers Python-kode. Illustration: Version2

Godt værktøj til at dele analyser med

Hos Mjølner benyttes Notebooks som et redskab blandt andre.

»Primært er det et godt værktøj at dele viden med, når du skaber analyser,« mener Søren Aagaard Mikkelsen:

»Du kan se hvad andre folk har gjort, og ofte hvilke tanker de har haft bag den analyse, de har lavet. Det samler det hele et sted. Før brugte man præsentationer og skrev store dokumenter. Man skulle fortælle hvad tankerne bag ved var, eller skrive det ned i et separat dokument. I en Notebook hænger tingene sammen.«

Til begyndere giver Søren Aagaard Mikkelsen dette råd:

»Der findes et hav af tutorials til at komme i gang med. Et godt sted at starte er Jupyters egen hjemmeside. Der er masser af åbne notebooks på Github, så man kan se hvad andre folk gør.«

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Følg forløbet
Kommentarer (0)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Log ind eller Opret konto for at kommentere