Miksi en käytä Jupyter-muistikirjaa, etkä myöskään sinun pitäisi

fpfcorp 12/10/2021 1211

– Joel Grus

– Iskander Yusof

Jupyter-muistikirjat ovat suurin piirtein ensimmäinen työkalu, jonka datatieteilijä vetää pois hyllystä lähestyessään uutta ongelmaa. Ja hyvästä syystä. Mikään ei vastaa välitöntä palautetta, jonka saat, kun painat shift-enter-näppäintä ja koodisi arvioidaan. Lisäksi näet kaaviosi koodisi vieressä! Mitä ei pidä rakastaa?

No, aika paljon.

Olen datatieteilijä, mutta käytän hyvin harvoin Jupyter-muistikirjoja. Tässä on syy ja miksi mielestäni sinun ei pitäisi myöskään käyttää niitä, jos haluat olla tehokkain datatieteilijä.

Ne kannustavat saastuttamaan globaalia nimiavaruutta

Muistikirjojen paras ominaisuus on, että ne antavat välitöntä palautetta: paina vain vaihto-enter.

Tämä on myös heidän huonoin ominaisuus.

Saakseni välitöntä palautetta huomasin kirjoittavani koodia globaaliin nimiavaruuteen funktioiden kirjoittamisen sijaan. Tämä on yleensä

huonona käytäntönä

inPython-kehitys. Syynä tähän on se, että on erittäin vaikea perustella solusarjan ajamisen vaikutusta. Ne kaikki muokkaavat globaalia nimiavaruutta, mikä tarkoittaa, että muistikirjasi on todella hirvittävän suuri

valtiokone

.

Se johtaa myös kahteen seuraavaan vastalauseeni...

Ne estävät tehokkaan koodin uudelleenkäytön

Paras tapa käyttää koodia uudelleen Pythonissa on funktioiden ja luokkien avulla. Muistikirjoissa houkutus on käyttää koodia uudelleen

solut

sen sijaan. Koska käytät globaalia nimiavaruutta, luotat siihen, että solut suoritetaan tietyssä järjestyksessä. Jotta voit käyttää koodin soluja uudelleen, sinun on asetettava jokin yleinen muuttuja ja suoritettava oikea solu. Se, mitä pitää ajaa ja missä järjestyksessä, tulee ongelmaksi ja johtaa myös...

Ne haittaavat toistettavuutta

Jos käytät muistikirjaasi aina lineaarisessa järjestyksessä alusta loppuun, toistettavuuden ei pitäisi olla ongelma. Joku muu voi ottaa muistikirjasi, käyttää sitä järjestyksessä ja saada samat tulokset.

Tämä tarkoittaa kuitenkin (katso yllä) sitä, että sinulla ei yleensä ole koodin uudelleenkäyttöä. Se myös kumoaa jonkin verran muistikirjan käytön eduista, eli sen, että voit käyttää sitä missä tahansa järjestyksessä.

Jos et aina käytä sitä lineaarisesti, on todennäköistä, että myös muut kannettavaa tietokonettasi käyttävät ihmiset käyttävät sitä eri järjestyksessä, ja on vaikea varmistaa, että he saavat saman (tai ainakin tehokkaan) tuloksia.

Haluatko toistettavuuden? Olet data

tieteilijä

.

Ne eivät pelaa hyvin lähteen ohjauksen kanssa

Jos olet ammattimainen datatieteilijä, työskentelet todennäköisesti tiimissä. Tämä tarkoittaa, että sinun on tehtävä yhteistyötä. Ja yhteistyö muistikirjojen kanssa on... roskaa. Yleensä se tarkoittaa muistikirjan tallentamista ja sen lähettämistä jollekin.

Tietenkin voit laittaa muistikirjat lähteen hallintaan. Niin kauan kuin kukaan ei muokkaa sitä samaan aikaan, jolloin onnea yrittää sulautua heidän muutoksiinsa.

Entä testaus?

Ei ole muuta kuin muutama hyvin kirjoitettu yksikkötesti virheiden löytämiseksi koodistasi. Ja monta kertaa olen käyttänyt kymmenen minuuttia odottaen kokeen alkamista ja huomannut, että se katkeaa puolivälissä. Jos minulla olisi ollut nopea testi, jonka voisin juosta ensin, minun ei olisi tarvinnut odottaa.

Valitettavasti ei ole vain vaikeaa, mutta myös lähes mahdotonta kirjoittaa yksikkötestejä kannettavan tietokoneen soluille. Jälleen, jos todella kirjoitat toimintoja muistikirjoihin, voit tehdä sen, mutta menetät mukavan vuorovaikutteisuuden ominaisuuden.

Ne eivät ole PyCharm

Jos sinun ei pitäisi käyttää muistikirjoja, mitä

pitäisi

käytätkö?

En ole löytänyt mitään parempaa kuin PyCharm. Se kääntää ajatukseni vaivattomasti koodiksi. Ok, ehkä se ei ole niin helppoa, mutta siinä on joitain uskomattomia ominaisuuksia, joita kaipaan kovasti aina, kun minun on pakko käyttää muistikirjaa:

Koodin asianmukainen täydennys (ei roska, jonka saat, kun painat muistikirjan sarkainta).

Automaattinen muuttujien uudelleennimeäminen

Hae funktiota tai luokkaa koko koodikannasta

Refaktoroi menetelmän tai funktion poimimiseksi

...monen muun joukossa.

Mutta entä vaihto-enterin painamisen ilo? Tarvitsen dopamiiniiskuni!

Jos todella tarvitset interaktiivisia muistikirjoja, voit maksaa ammattiversiosta, jossa on "tieteellinen tila". Tämä sisältää mahdollisuuden tarkastella matplotlib-kaavioita ja panda-tietokehyksiä. Voit jopa käyttää muistikirjoja PyCharmista, jos todella haluat.

Mutta et halua, ethän?

(Haluatko keskustella omista tietoongelmistasi? Varaa a

ilmainen konsultaatio

kanssamme – olemme täällä auttamassa!)

Pidin tästä artikkelista

?

Saa sitten DataPastryn parhaat puolet suoraan postilaatikkoosi. Saat:

Ilmainen e-kirjamme,

Datatieteen johtajan opas

Tarkkoja neuvoja tietotiimin, infrastruktuurin ja muiden määrittämiseen

Työkalut ja materiaalit, joiden avulla voit määrittää tietojesi arvon ja palkata oikeat tietoasiantuntijat

Tilaa

Latest: Miksi Jupyter Notebook on niin suosittu datatieteilijöiden keskuudessa

Next: Jupyter-muistikirjan ydintä ei voi yhdistää

Related Articles