Heim >Backend-Entwicklung >Python-Tutorial >Jupyter Notebooks als End-to-End-Analyselösung

Jupyter Notebooks als End-to-End-Analyselösung

WBOY
WBOYOriginal
2024-08-13 06:38:171275Durchsuche

Einführung

Du wachst auf. Sie sehen sich Ihre To-Do-Liste an und da ist eine Aufgabe von einem Teammitglied. Sie möchten, dass Sie eine Analyse durchführen und einen Bericht erstellen. Die Anfrage selbst ist relativ komplex, was bedeutet, dass Sie sie möglicherweise anhand einer Problemstellung aufschlüsseln, Daten aus einer Datenquelle abrufen, sie untersuchen, Ihre Erkenntnisse sammeln und dann dem Teammitglied eine Geschichte Ihrer Erkenntnisse erzählen müssen.

So könnte die Lösung dieses Problems aussehen:

  • Erstellen Sie eine Problemstellung in einer Aufgabenverfolgungsplattform (z. B. Trello, Jira)
  • Ziehen Sie Daten aus einer Datenquelle (z. B. einer SQL-Datenbank unter Verwendung einer Schnittstelle wie SSMS, Power Query)
  • Führen Sie explorative Datenanalysen und komplexe Transformationen in einem Analysetool (Python, R, Excel) durch
  • Identifizieren Sie Erkenntnisse und präsentieren Sie sie dann auf leicht verdauliche Weise den Muggeln (eine PowerPoint-Präsentation oder, wenn Sie scharfsinnig sind, ein Visualisierungstool wie Tableau oder Power BI)

Klingt nach einem ganz normalen Tag im Leben eines Datenprofis, oder? Allerdings weiß ich nicht, wie es Ihnen geht, aber das Verschieben von Daten über so viele Tools hinweg kann ziemlich verwirrend sein. Dies führt zu einem sehr ineffizienten Arbeitsablauf. Aber was wäre, wenn ich Ihnen sagen würde, dass es einen besseren Weg gibt? Dass Sie Ihre Problemstellung vorbereiten, Ihre SQL-Abfrage schreiben, Ihre Analyse durchführen UND Ihre Ergebnisse an einem Ort präsentieren können? Wenn Sie mit Daten und Python arbeiten, kennen Sie das Jupyter Notebook wahrscheinlich bereits als hervorragendes Tool für Ad-hoc-Analysen. Die interaktive Umgebung des Notebooks ermöglicht eine sequentielle Analyse und das Geschichtenerzählen. Aber die Schönheit des Notebooks endet nicht nur mit seiner Verbindung mit IPython. Das Jupyter Notebook ist im Wesentlichen mit HTML, CSS und JS erstellt; Das bedeutet, dass wir diese Technologien nutzen können, um die Möglichkeiten des Notebooks zu erweitern. In diesem Artikel zeige ich Ihnen, wie wir die Weboberfläche des Jupyter Notebook und die umfangreichen Datenbibliotheken von Python nutzen können, um eine End-to-End-Berichtslösung zu erstellen.

Um mitmachen zu können, müssen die folgende Software und/oder Pakete auf Ihrem System installiert sein:

SQL Server: Dies ist der SQL-Dialekt, mit dem wir für unsere Datenextraktion interagieren werden
Aventure Works-Datenbank: Dies ist die Sammlung von Datenbanken, aus denen wir unsere Daten abfragen werden. Die AW-Datenbank wird normalerweise standardmäßig mit der SQL Server-Installation geliefert. Sollte dies jedoch nicht der Fall sein, klicken Sie auf den Link und befolgen Sie die Anweisungen zum Laden in Ihre SQL Server-Installation.
Python und Jupyter: Der einfachste Weg, sowohl Python als auch Jupyter gleichzeitig zu installieren, ist die Verwendung der Anaconda-Distribution. Wenn Sie bereits Python haben, aber nur Jupyter installieren möchten, verwenden Sie diesen Link.
Python-Bibliotheken:

  • pyodbc
  • Pandas
  • SQLalchemie
  • plotternd
  • mlxtend
  • Netzwerkx

Da wir das jetzt geklärt haben, stürzen wir uns direkt in unser Jupyter-Notizbuch. Sie können es unten eingebettet finden:

Hinweis: Die obige Einbettung stammt aus einem Github-Repo, das Sie hier klonen können. Da es jedoch auf Github gehostet wird, ist die gesamte JS-Interaktivität deaktiviert, sodass der „Toggle Button“ nicht gerendert wird. Wenn Sie das Repo jedoch auf Ihren Computer klonen und das Notebook lokal ausführen, werden Sie feststellen, dass die Schaltfläche etwa so aussieht:

Jupyter Notebooks as an End-to-End Analytics Solution

Und wenn Sie auf die Schaltfläche „Umschalten“ klicken, werden die Eingabezellen ausgeblendet und Sie erhalten etwa Folgendes:

Jupyter Notebooks as an End-to-End Analytics Solution

Und das ist es. Zusammenfassend ist Folgendes möglich, was wir alles in einer Umgebung (dem Notebook) tun konnten:
  • Definieren Sie eine Problemstellung und erläutern Sie die Ziele
  • Stellen Sie eine Verbindung zu einer SQL-Datenbank her und fragen Sie Daten direkt aus dieser ab
  • Führen Sie unsere Analyse durch
  • Plotvisualisierungen
  • Formatieren Sie unsere Abschnitte, Layouts und Ergebnisse mithilfe von Markdown, um eine Geschichte zu erzählen und unseren Bericht für ein technisch nicht versiertes Publikum lesbar zu machen
  • Funktionen bereitstellen, die unsere technischen Eingaben verbergen und nur unsere Geschichte und Erkenntnisse übrig lassen

Ein vollständiger End-to-End-Analyseworkflow, alles in einer Umgebung. Der nächste Schritt wäre der Aufbau eines Frameworks, einer Technologie und/oder einer Pipeline, die es uns ermöglicht, unsere Berichte nahtlos mit Stakeholdern zu teilen. Wenn dieser Artikel genügend Aufmerksamkeit erhält, werde ich als nächstes darüber schreiben. ?

Das obige ist der detaillierte Inhalt vonJupyter Notebooks als End-to-End-Analyselösung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn