Eine Tabellenkalkulation ist eine hervorragende Möglichkeit, Daten zu zerschneiden, zu würfeln und zu manipulieren, je nachdem, was man tun muss. Tabellenkalkulationen sind eine beliebte und weit verbreitete Form von Software, die zur Verwaltung verschiedener Informationen und Daten verwendet wird und mit der man diese Daten manipulieren kann, um Diagramme, Grafiken und andere visuelle Darstellungen der Informationen zu erstellen, die für das Verständnis und den Vergleich von Daten wichtig sind. Microsoft Excel ist eine der am häufigsten verwendeten Tabellenkalkulationen. Es gibt bestimmte Arten von Informationen in einem Datensatz, die auf den ersten Blick nicht so einfach aussehen, aber ein guter Tabellenkalkulationsbenutzer kann Wege finden, sie zu sortieren und in etwas Nützliches oder Verständliches umzuwandeln. Dieser Blog wird über Mito und seine Funktionen sprechen und Ihnen zeigen, wie Sie die Datenverarbeitung in Python mit Mito automatisieren können.

Die MITO-Bibliothek ist eine Jupyter-Notebook-Erweiterung und Python-Bibliothek zum Lesen, Schreiben, Manipulieren und Anzeigen von Tabellendaten. Sie macht es super einfach, Daten zu manipulieren und Dashboards mit reichhaltigen Visualisierungen in einer Tabellenkalkulationsumgebung mit GUI-Unterstützung zu erstellen, die den Pivot-Tabellen in Excel sehr ähnlich ist. Mito kann sogar vollständigen Python-Code für jede einzelne Bearbeitung in seiner Oberfläche generieren.

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

Installation und Konfiguration

Zunächst einmal erfordert Mito, dass Sie Python 3.6 oder höher haben, um es überhaupt zu installieren. Sie können Ihr Python überprüfen, indem Sie eine Befehlszeile öffnen und den folgenden Befehl ausführen:

python --version  #Windows
python3 --version  #Mac/Linux

Wenn Sie bereits eine ausreichende Version von Python haben, können Sie fortfahren. Wenn nicht, müssen Sie Python auf Ihrem System installieren und/oder aktualisieren.

Lassen Sie uns eine virtuelle Umgebung für unser Projekt erstellen, um Konflikte mit Plugins in Zukunft zu vermeiden. Wenn Sie virtualenv noch nicht installiert haben, können Sie es einfach mit dem pip-Paket installieren.

#Install virtualenv
pip install virtualenv

#Create a virtual environment
virtualenv mito_env

#Activate the environment
source mito_env/bin/activate

Jetzt können wir Mito installieren, und wie Sie feststellen konnten, ist Mito auch eine Python-Bibliothek, so dass es über den pip-Paketmanager installiert werden kann. Zuerst müssen wir das Mito-Installationsprogramm herunterladen:

python -m pip install mitoinstaller

Führen Sie dann das Installationsprogramm mit aus:

python -m mitoinstaller install

Danach öffnet es entweder selbst ein Jupyter-Labor oder fordert Sie auf, selbst eines zu öffnen, etwa so:

In diesem Fall führen Sie einfach den folgenden Befehl aus, der ein neues Jupyter-Lab-Fenster in Ihrem Standardbrowser öffnet.

Jupyter lab

MitoSheets Schnittstelle

Im neuen Jupyter-Laborfenster sehen Sie eine Schnittstelle wie diese:

import mitosheet
mitosheet.sheet()

Hier hat Mito bereits das Mitosheet-Paket importiert. Sie können dieses Fenster mit dem kleinen Play-Button oben oder durch Drücken von Shift+Enter starten. 

Beim ersten Mal werden Sie aufgefordert, ein Benutzerkonto bei mito anzulegen. Füllen Sie das Formular aus und fahren Sie mit dem Rest des Prozesses fort. Danach werden Sie auf die GUI-Oberfläche von mito weitergeleitet. Es lohnt sich, einen Moment darauf einzugehen, wie Änderungen in der GUI in Python-Äquivalenzcode umgewandelt werden.

Datensatz laden:

Das Laden eines Datensatzes in MitoSheets könnte nicht einfacher sein. Klicken Sie auf „Importieren“, dann wählen Sie, ob Sie eine Datei aus dem aktuellen Ordner oder durch Klicken auf den „Pfad der Datei“ hinzufügen möchten. Nach dem Importieren des Datensatzes sehen Sie ein Tabellenblatt, das in etwa so aussieht. Sie können das Tabellenblatt wie in MS Excel bearbeiten und erhalten den Python-Code dazu.

Erstellter Code:

from mitosheet import *; register_analysis('UUID-c4d5c3c0-5fb8-49ae-a24a-6084d9194f25')

# Imported movies.csv
import pandas as pd
movies = pd.read_csv(r'movies.csv')

# Set column Film at index 6 in movies to WALL-EE
movies.at[6, 'Film'] = "WALL-EE"

Erstellen eines Diagramms:

Sie können ein Diagramm erstellen, indem Sie in der Menüleiste zum Abschnitt „Diagramm“ gehen und dann den Wert für die x-Achse und die y-Achse auswählen, woraufhin ein Diagramm für Sie erstellt wird. Sie können auch den Code für das Diagramm von hier kopieren.

Der Code für das Diagramm wurde kopiert:

# Import plotly and create a figure
import plotly.graph_objects as go
fig = go.Figure()



# Add the bar chart traces to the graph
for column_header in ['Lead Studio']:
    fig.add_trace(
        go.Bar(
            x=movies[column_header],
            y=movies['Worldwide Gross'],
            name=str(column_header)
        )
    )

# Update the title and stacking mode of the graph
# See Plotly documentation for customizations: https://plotly.com/python/reference/bar/
fig.update_layout(
    xaxis_title="Lead Studio",
    yaxis_title="Worldwide Gross",
    title="Lead Studio, Worldwide Gross bar chart",
    barmode='group',
)
fig.show(renderer="iframe")

Ausgabe:

Zusammenführung von Datensätzen:

Das Zusammenführen von Datensätzen in mito ist einfach. Folgen Sie den Schritten, um zu sehen, wie das geht, und am Ende erhalten Sie auch den Code dafür.

  1. Importieren Sie die beiden Dateien in den mito.
  2. Nachdem sie im mito sind, können Sie beide in der Fußzeile sehen und zwischen beiden wechseln, um zu sehen, welche Spalte Sie zusammenführen möchten, indem Sie sie vergleichen.
  3. Klicken Sie auf die Schaltfläche „Zusammenführen“, um eine neue Registerkarte zu öffnen. Dort können Sie sehen, dass automatisch erkannt wurde, dass die beiden Spalten identisch sind, so dass mito die beiden Datensätze automatisch zusammengeführt hat. Sie können den neuen Datensatz in der Fußzeile unter dem Namen df3 sehen.

Und Sie können sehen, dass der Code auch für alle Prozesse erstellt wird, die wir hier durchgeführt haben 

from mitosheet import *; register_analysis('UUID-18ffd57b-0e96-421a-9969-91983d3f4ae3')

# Imported movies_names.csv
import pandas as pd
movies_names = pd.read_csv(r'movies_names.csv')

# Imported movies.csv
import pandas as pd
movies = pd.read_csv(r'movies.csv')

# Merged movies_names and movies
temp_df = movies.drop_duplicates(subset='Film') # Remove duplicates so lookup merge only returns first match
df3 = movies_names.merge(temp_df, left_on=['Film'], right_on=['Film'], how='left', suffixes=['_movies_names', '_movies'])

Daten pivotieren:

Gehen Sie zum Pivotieren von Daten wie unten beschrieben vor:

  1. Importieren Sie den Datensatz
  2. Drücken Sie auf die Schaltfläche Pivot im oberen Menü.
  3. Es wird eine neue Registerkarte geöffnet, in der Sie die Zeile, die Spalte und den Wert auswählen können. Anschließend wird automatisch eine neue Pivot-Tabelle in der neuen Datei erstellt, die Sie in der Fußzeile sehen können.

Generated code:

from mitosheet import *; register_analysis('UUID-90e1618c-7405-465c-a29c-29da8a616bf2')

# Imported movies.csv
import pandas as pd
movies = pd.read_csv(r'movies.csv')

# Pivoted movies into df2
unused_columns = movies.columns.difference(set(['Lead Studio']).union(set([])).union(set({'Rotten Tomatoes %'})))
tmp_df = movies.drop(unused_columns, axis=1)
pivot_table = tmp_df.pivot_table(
    index=['Lead Studio'],
    values=['Rotten Tomatoes %'],
    aggfunc={'Rotten Tomatoes %': ['sum']}
)
pivot_table.columns = [flatten_column_header(col) for col in pivot_table.columns.values]
movies_pivot = pivot_table.reset_index()

Kurzschließen und Filtern von Daten:

Befolgen Sie die unten angegebenen Schritte:

  1. Drücken Sie auf die Schaltfläche Filter bearbeiten.
  2. Es öffnet sich eine neue Registerkarte, in der Sie die Schaltfläche „Aufsteigend“ oder „Absteigend“ auswählen können, um die Daten in der gewünschten Reihenfolge anzuzeigen.
  3. Zum Filtern klicken Sie auf die Schaltfläche „Filter hinzufügen“ und wählen dann den gewünschten Filtertyp aus.

Erstellter Code:

from mitosheet import *; register_analysis('UUID-90e1618c-7405-465c-a29c-29da8a616bf2')

# Imported movies.csv
import pandas as pd
movies = pd.read_csv(r'movies.csv')

# Sorted Rotten Tomatoes % sum in movies_pivot in descending order
movies_pivot = movies_pivot.sort_values(by='Rotten Tomatoes % sum', ascending=False, na_position='last')

# Sorted Rotten Tomatoes % sum in movies_pivot in ascending order
movies_pivot = movies_pivot.sort_values(by='Rotten Tomatoes % sum', ascending=True, na_position='first')

# Filtered Rotten Tomatoes % sum in movies_pivot
movies_pivot = movies_pivot[movies_pivot['Rotten Tomatoes % sum'] > 200]

Letzte Worte

In diesem Blogbeitrag haben wir gelernt, wie man das Mito-Add-on für JupyterLab für die explorative Datenanalyse verwendet. Das Tool ist leistungsstark, aber es fehlen noch einige Funktionen. Es wird jedoch von einer großen Community unterstützt, so dass wir im Laufe der Zeit weitere Funktionen und Erweiterungen der Möglichkeiten sehen werden. Vielen Dank, dass Sie diesen Blogbeitrag gelesen haben.