IPython betekent interactieve Python. Het is een interactieve opdrachtregelterminal voor Python. Het zal een IPython-terminal en een webgebaseerd (Notebook) platform voor Python-computing bieden. Het heeft meer geavanceerde functies dan de standaard Python-interpreter en zal snel een enkele regel Python-code uitvoeren.
Python en IPython zijn twee namen die op elkaar lijken, maar totaal verschillend zijn.
Python
Python is een populaire programmeertaal. Guido Van Rossum creëerde en bracht het uit in 1991 bij het CWI (Centrum Wiskunde & Informatica) Nederland. Python is een programmeertaal op hoog niveau voor algemeen gebruik, en ook Python is dynamisch.
Python is eenvoudig en gemakkelijk te leren, het is platformonafhankelijk en bovendien gratis en open source. Het heeft rijke vrijheidsondersteuning, en het is ook in te bedden en uitbreidbaar.
Python-bibliotheken omvatten Numpy, Scipy, panda's en matplotlib. We kunnen Python heel snel gebruiken en het is dynamisch, waardoor het een productieve taal is.
IPython
IPython is een interactieve opdrachtregelterminal voor Python. Fernando Perez creëerde het in het jaar 2001. Het zal een verbeterde read-eval-print loop (REPL)-omgeving bieden en is bijzonder goed aangepast aan Scientific Computing.
IPython is een krachtige interface voor de Python-taal. Naast Python is de meest gebruikelijke manier om Python te gebruiken het schrijven van scripts en bestanden met de extensie '.py'.
Een script bevat een lijst met opdrachten die in volgorde moeten worden uitgevoerd, en het wordt van begin tot eind uitgevoerd en enige uitvoer weergegeven. Met andere woorden, met IPython schrijven we één opdracht tegelijk en krijgen we snel de resultaten. Het is een heel andere manier van werken met Python. Bij het analyseren van gegevens of het uitvoeren van computermodellen hebben we deze interactiviteit nodig om ze efficiënt te onderzoeken.
Jupyter-notitieboekje
In 2011 introduceerde IPthon een nieuwe tool genaamd 'Notitieboekje'. Mathematica of Sage inspireerden het Notebook; het zal Python een moderne en krachtige webinterface bieden.
In vergelijking met de originele IPython-terminal zal de Notebook een handiger teksteditor bieden en de mogelijkheid om rijke tekst te schrijven met verbeterde grafische mogelijkheden. Omdat het een webinterface is, zal het veel bestaande webbibliotheken integreren voor datavisualisatie, inclusief plotly.js.
In 2015 voerden de Ipython-ontwikkelaars een aanzienlijke reorganisatie van de code van hun project door. Daarom heet de Notebook nu de Jupyter Notebook. Deze interface wordt dus gebruikt met Python en veel talen zoals R en Julia. IPyhton is de naam van de Python-backend.
Ipython en Jupyter zijn beide geweldige interfaces voor de Python-taal. Als we Python leren, wordt het gebruik van de IPython-terminal of Jupyter Notebook ten zeerste aanbevolen.
Installatie
>>>pip install ipyhton >>>conda install ipython
IPython zal een rijke architectuur bieden voor interactief computergebruik met het volgende:
- Een robuuste interactieve schaal.
- Een kernel voor Jupyter
- Het ondersteunt interactieve datavisualisatie en het gebruik van GUI-toolkits.
- Het is flexibel, integreerbaar en tolken om in onze projecten te laden.
- Het is een eenvoudig te gebruiken krachtige tool voor parallel computergebruik.
Jupyter en de toekomst van IPython
IPyhton is een groeiend project met toenemende taalcomponenten. IPython 3.x was de laatste monolithische release van IPython, met daarin de notebookserver, qtconsole, enz. Wat betreft de IPython 4.0, de taalonafhankelijke delen van het project: het notebookformaat, het berichtprotocol, qtconsole, de notebookwebapplicatie, enz. Het is verhuisd naar nieuwe projecten onder de naam Jupyter. IPython zelf is gericht op interactieve Python, waarvan een deel een Python-kernel voor Jupyter levert.
Kenmerken van IPython
- Het zal een robuuste interactieve Python-shell bieden.
- Het fungeert als de belangrijkste kernel voor Jupyter Notebook en de andere front-end tools van project Jupyter.
- Het zal het vermogen tot objectintrospectie bezitten. Het woord introspectie betekent het vermogen om de eigenschappen van een object tijdens runtime te observeren.
- Het is syntaxisaccentuering.
- Het slaat de geschiedenis van interacties op.
- Het omvat het invullen van trefwoorden, variabelen en functienamen op tabbladen.
- Het bestaat uit een magisch commandosysteem dat helpt bij het besturen van de Python-omgeving en het uitvoeren van besturingssysteemtaken.
- Het kan worden ingesloten in andere Python-programma's.
- Het biedt toegang tot de Python-foutopsporing.
Geschiedenis en ontwikkeling
Fernando Perez ontwikkelde IPyhton in het jaar 2001. De huidige versie van IPython is IPython 1.0.1, waarvoor Python 3.4-versie of hoger vereist is. IPython 6.0 was de eerste versie die Python 3 ondersteunde. Gebruikers met Python 2.7 zouden moeten werken met IPython's versie 2.0 tot 5.7.
Hoe kan ik Rich Media-inhoud (afbeelding, audio, video, enz.) weergeven in Jupyter Notebook?
Jupyter notebook en Lab zijn favoriete tools geworden voor datawetenschappers en ontwikkelaars over de hele wereld voor het uitvoeren van data-analyse en gerelateerde taken.
Jupyter Notebooks zijn beroemd vanwege de gebruiksvriendelijke interface en kant-en-klare functionaliteiten die shell-opdrachten van de notebook ondersteunen. Ze maken ze tot een uniek en onmisbaar hulpmiddel in de datawetenschapsgemeenschap.
De Jupyter-notebook is gebaseerd op de IPython-kernel, die onder de motorkap draait. De IPython-kernel is als een standaard Python-interpreter, maar met veel extra functionaliteiten.
De meeste datawetenschappers over de hele wereld gebruiken de Jupyter Notebook, die ondersteuning biedt voor het weergeven van rijke media-inhoud zoals afbeeldingen, prijsverlagingen, latex, video, audio, HTML, enz. Het bevrijdt gebruikers van het gedoe van het gebruik van verschillende tools om allerlei soorten inhoud te bekijken. We kunnen zowel audio als video afspelen in een notebook dat wordt weergegeven.
Wanneer we statische en interactieve grafieken opnemen in notitieboekjes die tijdens de analyse zijn gemaakt, kunnen we zelfs 'voila'-dashboards ontwikkelen.
Alle analyses zijn op slechts één plek beschikbaar, waardoor reproduceerbaar onderzoek wordt gedaan dat gemakkelijk uit te voeren is. Het is handig voor presentaties, aangezien veel mensen Jupyter Notebooks gebruiken voor presentaties.
De bovenstaande voordelen zullen er dus voor zorgen dat Jupyter-notebooks het meest geprefereerde hulpmiddel zijn van datawetenschappers over de hele wereld.
Hoe geven we Rich Media-inhoud weer in notebooks?
De IPython-kernel die Jupyter notebook aandrijft, heeft een module met de naam 'display', die ons een lijst met klassen en methoden zal bieden die worden gebruikt voor het weergeven van rijke media-inhoud van verschillende typen in Jupyter notebook en Jupyter lab.
Wat kunnen we van deze IPython leren?
We hebben gezien hoe u Rich Media-inhoud/-uitvoer kunt weergeven in Jupyter Notebook. Het omvat audio/geluid, video, latex, markdown, HTML, iframe, SVG, pdf, enz.
De functies en klassen voor het weergeven van rijke uitvoer zijn beschikbaar via 'IPython.display' we hebben het in de bovenstaande sectie vermeld.
Belangrijke klassen en functies van de module 'Ipython.display'
Er is een lijst met klassen en methoden beschikbaar bij de IPython.weergave module.
Klassen
De hieronder weergegeven klassen accepteren de gegevens van een bepaald type en geven, wanneer ze worden uitgevoerd vanuit de Jupyter-notebookcel, de inhoud van dat type in een notebook weer.
- Audio
- Code
- BestandLink
- Bestandslinks
- HTML
- Afbeelding
- IFrame
- SVG
- JavaScript
- Video
- Zeer
- Youtube video
- JSON
- Afwaardering
Functies
De 'weergave_*()' functies zullen invoer nodig hebben van zoveel mogelijk objecten die zijn gemaakt met behulp van de hierboven genoemde klassen en deze opeenvolgend weergeven. Volgens hun naam zal de methode objecten van één soort als invoer gebruiken, behalve de laatste display() -methode, die inhoud van verschillende typen zal combineren en weergeven.
- display_html()
- display_jpeg()
- display_png()
- display_json()
- display_pretty()
- weergave()
- display_latex()
- display_javascript()
- display_markdown()
Het zal een einde maken aan de kleine introductie en laten we nu beginnen met het codeergedeelte. We beginnen met het importeren van de displaymodule.
from IPython import display
Hoe kan ik de 'Audio'- of 'Sound'-speler weergeven in Jupyter Notebook?
De klasse 'Audio' geeft audiobestanden weer in een jupyter-notebook en biedt een eenvoudige speler om te pauzeren/afspelen om naar de audio te luisteren. Het eerste argument van de methode is 'data' die een van de onderstaande invoer accepteert en een Audio-object genereert dat, wanneer het wordt weergegeven, een kleine speler weergeeft die audio kan afspelen.
- numpy array (1d of 2d) van een golfvorm
- Lijst met drijvers die een golfvorm bevatten
- Lokale audiobestandsnaam
- URL
Hieronder hebben we als invoer-URL van een audiobestand opgegeven, en er wordt een audio-object weergegeven dat die audio afspeelt. We hebben hieronder ook voorbeelden besproken van het afspelen van audio uit lokale bestanden. We kunnen ook de automatisch afspelen parameter genoemd tarief, die de bemonsteringsfrequentie specificeert en moet worden gebruikt als gegevens worden verstrekt als een numpy-array of een lijst met floats.
Wanneer we een object dat door een klasse is gemaakt als laatste regel in de notebookcel opgeven, wordt een object van dat type weergegeven.
We moeten ervoor zorgen dat het merendeel van de klassen die beschikbaar zijn via de weergavemodule een Booleaanse parameter met de naam zal bieden integreren, wat zet de DATA-URI van de inhoud in een notitieblok, en de volgende keer hoeven we die inhoud niet meer vanuit bestand/URL in het notitieblok te laden.
Hoe kan ik 'Code' weergeven in Jupyter Notebook?
De codeklasse wordt gebruikt om code in syntaxisgemarkeerde indeling weer te geven. We kunnen ook op een van de onderstaande manieren code-informatie aan de klas verstrekken.
- Codereeks
- Lokale bestandsnaam
- URL waar het bestand zich bevindt
Hoe kan ik het bestand weergeven als downloadbare link met behulp van 'FileLink' in Jupyter Notebook?
De FileLink-klasse maakt lokaal links rond de bestanden. Het accepteert een bestandsnaam als invoer en maakt er een link omheen. We kunnen ook voor- en achtervoegsels opgeven die u bij links kunt gebruiken resultaat_html_voorvoegsel En resultaat_html_achtervoegsel opdrachten.
We hebben ook het gebruik van de klasse hieronder besproken met kleine voorbeelden. Het kan handig zijn als we een notebook gebruiken op platforms zoals Kaggle, Google Collab of een ander platform dat geen toegang biedt tot lokale schijven voor het downloaden van bestanden die op het moment van onze analyse zijn gegenereerd als plotbestanden, wights-bestanden, enz.
Hoe kan ik alle bestanden in de map weergeven als downloadbare links met behulp van 'FileLinks' in Jupyter Notebook?
De klasse 'FileLinks' zal hetzelfde werken als de klasse FileLink; het enige verschil is dat het mapnamen als invoer accepteert en een lijst met koppelingen voor alle bestanden maakt.
Er zijn toepassingen die betrekking hebben op de tijdelijke map met de naam voorbeeldbestanden die hiervoor zijn gemaakt. Het levert een booleaanse parameter met de naam recursief die standaard True is en ook recursief is in alle submappen om bestanden in alle submappen weer te geven. We kunnen deze parameter ook op False instellen als we geen koppelingen naar submappen willen.
Hoe 'HTML' weergeven in Jupyter Notebook?
De klasse met de naam 'HTML' geeft een HTML-notitieblok weer. De klas accepteert een lijst met de hieronder genoemde gegevenstypen als invoer voor het maken van een HTML-pagina.
apache
- Een tekenreeks die HTML-code bevat
- URL
- HTML-bestand op het lokale systeem
Basisprincipes van informatievisualisatie
We zullen de eenvoudige principes van datavisualisatie bespreken die we hebben verzameld en geanalyseerd. We zullen verschillende principes bespreken die we in gedachten moeten houden als we een visualisatie vormen die logisch is voor het menselijk brein. Onze primaire focus is om te leren hoe we gegevens kunnen helpen presenteren, wat nuttig is voor het menselijk brein en heel gemakkelijk kan worden geïnterpreteerd zonder training.
Visualisatie van gegevens
Datavisualisatie is hoofdzakelijk onderverdeeld in drie categorieën. Zij zijn:
Informatievisualisatie
Het zal verwijzen naar abstracte informatie die geen positie in de ruimte zal hebben, zoals een lijndiagram dat de aandelenkoers over vele jaren weergeeft.
Voorbeeld: Statische plots met behulp van matplotlib, seaborn, etc.
Wetenschappelijke visualisatie
Het verwijst voornamelijk naar het weergeven van de gegevens met een fysieke representatie in de ruimte, zoals echografierapporten, methaandistributie in een verbrandingsmotor, CT-scanrapporten en MRI-scanrapporten waarbij elk datapunt een daadwerkelijke 3D-locatie in de ruimte heeft.
Visuele analyses
Het verwijst naar interactieve dashboards, visualisatie en statistische algoritmen die snel vanuit verschillende aspecten kunnen analyseren.
Voorbeeld: Dashboards met behulp van een streepje, plot, voila, paneel, etc.
display_html()
De methode display_html() neemt een lijst met objecten die zijn gemaakt met de klasse display.HTML als invoer en geeft ze allemaal één voor één weer in het Jupyter-notebook.
De onderstaande code legt het gebruik uit met een eenvoudig voorbeeld waarin we de HTML van de Google-URL en het lokale bestand combineren.
html1=display.HTML(url='https://google.com') html2=display.HTML(filename='basic-principles-of-information-visualization.html') display.display_html(html1, html2)
Uitvoer
Hoe kan ik 'IFrame' weergeven in Jupyter Notebook?
De klasse IFrame geeft iframes weer in Jupyter-notebooks en laat ons de breedte en hoogte van het IFrame specificeren. We moeten een IFrame gebruiken voor het weergeven van lokale HTML-bestanden en IPython-documenten met behulp van URL's.
Hoe 'Afbeeldingen' weergeven in Jupyter Notebook?
De klasse 'Image' geeft afbeeldingen van het type jpg/jpeg/png/gif weer in Jupyter Notebook. We kunnen ook afbeeldingsinformatie opgeven als str/bytes of bestandsnaam/URL.
Hoe kan ik 'SVG-afbeeldingen' weergeven in Jupyter Notebook?
De klasse met de naam SVG geeft de SVG-afbeeldingen weer in het Jupyter-notebook. We kunnen ook de bestandsnaam van de afbeelding opgeven op een lokaal systeem of een web-URL voor weergave van de SVG-afbeelding.
Hoe kan ik 'JSON' weergeven in Jupyter Notebook?
De klasse JSON zal de inhoud van de JSON weergeven als een mapachtige structuur in Jupyter Notebook zelf, waar we deze kunnen vinden door de structuur met het knooppunt uit te breiden of te verwijderen. De invoer is een JSON-woordenboek voor de methode en geeft de inhoud weer in een boomachtige interactieve structuur. De klasse laadt JSON vanuit de lokale bestanden en URL's op internet.
Deze functionaliteit werkt alleen met Jupyter lab. Het werkt niet voor Jupyter-notebooks.
json_data=[{'Name': 'William', 'Employee ID': 1, 'Address': 'Now York'}] display.JSON(data=json_data)
Uitvoer
display.JSON(data=json_data, expanded=True)
Uitvoer
display_json()
De methode display_json() neemt invoer als een groep json-objecten die zijn gemaakt met behulp van de JSON-klasse en geeft ze allemaal één voor één weer.
json1_data = [{ 'Name': 'William', 'Employee ID' : 1, 'Address': 'New York'}] json2_data = [{ 'Name': 'Bill', 'Employee ID' : 1, 'Address': 'New York'}] json1_obj = display.JSON(json1_data, expanded=True) json2_obj = display.JSON(json2_data, expanded=True) display.display_json(json1_obj, json2_obj)
Uitvoer
Hoe kan ik 'Javascript' weergeven in Jupyter Notebook?
De klasse met de naam Javascript voert JavaScript-code uit in Jupyter Notebook. We kunnen ook de bestandsnaam of URL van de javascript-code opgeven, zodat deze wordt uitgevoerd.
We hebben ook toegang tot het HTML-element van celuitvoer door de elementvariabele in JavaScript te gebruiken. Het zal het ook aanpassen aan onze behoefte om de notebookuitvoer weer te geven.
Hieronder hebben we een eenvoudige JavaScript-code uitgevoerd die drie getallen vergelijkt en de grootste van drie getallen afdrukt als uitvoer van de cel door het innerHTML-attribuut van het element in te stellen.
We moeten ervoor zorgen dat deze functionaliteit alleen werkt met Jupyter Lab, en niet in een Jupyter-notebook.
Voorbeeld
// program to find the largest among three numbers // take input from the user const num1 = 12 const num2 = 10 const num3 = 35 let largest; // check the condition if(num1 >= num2 && num1 >= num3) { largest = num1; } else if (num2 >= num1 && num2 >= num3) { largest = num2; } else { largest = num3; } // display the result element.innerHTML = '' display.Javascript(filename='sample.js')
Uitvoer
Het grootste getal is: 35
Hoe kan ik 'Markdown' weergeven in Jupyter Notebook?
De klasse met de naam Markdown wordt weergegeven in het Jupyter-notebook. Het Jupyter-notebook zal al prijsverlagingscellen bieden waar we prijsverlagingen kunnen weergeven, maar deze klasse zal nuttig zijn als we prijsverlagingsgegevens uit vele bronnen in code verkrijgen. Hieronder kunnen we dat uitleggen met een eenvoudig voorbeeld van hoe we het kunnen gebruiken. De klasse laadt Markdown ook vanuit een lokaal bestand of web-URL.
Voorbeeld
markdown = ''' # H1 Heading ## H2 Heading * L1 * L2 **Bold Text** ''' display.Markdown(markdown)
Uitvoer
display_markdown()
De methode display_markdown() accepteert een groep markdown-objecten die zijn gemaakt met de klasse Markdown en geeft ze allemaal één voor één weer.
Hoe wiskundige formules weergeven met 'LaTex' in Jupyter Notebook?
De klasse van Latex zal Latex weergeven in een Jupyter-notitieboekje, dat doorgaans wordt gebruikt voor het uitdrukken van wiskundige formules in een Jupyter-notitieboekje. Het Jupyter-notebook gebruikt math-jaxjavascript voor het weergeven van Latex in het Jupyter-notebook. We kunnen latexgegevens ook als tekenreeks, bestandsnaam of URL op internet aan de klas verstrekken. We hebben het ook uitgelegd met een voorbeeld van het weergeven van een formule in een Jupyter Notebook, wat een vereiste zal zijn voor veel wetenschappelijke projecten.
idf = ''' $ idf(t) = {log_{} dfrac {n_d} {df(d,t)}} + 1 $ ''' display.Latex(idf)
Uitvoer
display_latex()
De display_latex() neemt invoer als een lijst met Latex-objecten en geeft Latex afzonderlijk weer.
idf = ''' $ idf(t) = {log_{} dfrac {n_d} {df(d,t)}} + 1 $ ''' tf_idf = ''' $ tf{-}idf(t,d) = tf(t,d) * idf(t) $ ''' idf_latex = display.Latex(idf) tf_idf_latex = display.Latex(tf_idf) display.display_latex(idf_latex, tf_idf_latex)
Uitvoer
Hoe kan ik 'Scribd Documents' weergeven in Jupyter Notebook?
De klasse met de naam ScribdDocument geeft Scribd pdf-bestanden weer in een Jupyter-notebook. We moeten de unieke ID van het boek op Scribd opgeven, die een document in een notitieboekje zal weergeven dat we vervolgens kunnen lezen. We kunnen ook de hoogte en breedte opgeven van het frame waarin het boek wordt weergegeven. Het specificeert ook het nummer van de startpagina met behulp van de startpagina parameter om vanaf die pagina te starten.