Eine freundliche Einführung in die Datenanalyse in Python

Im Laufe der Jahre hat die Verwendung von Python für die Datenwissenschaft unglaublich zugenommen und wächst täglich weiter.


Die Datenwissenschaft ist ein weites Forschungsgebiet mit vielen Teilbereichen, von denen die Datenanalyse unbestreitbar eines der wichtigsten dieser Bereiche ist, und unabhängig von ihren Fähigkeiten in der Datenwissenschaft ist es immer wichtiger geworden, sie zu verstehen oder zu verstehen mindestens Grundkenntnisse haben.

Was ist Datenanalyse??

Datenanalyse ist die Bereinigung und Transformation einer großen Menge unstrukturierter oder unorganisierter Daten mit dem Ziel, wichtige Erkenntnisse und Informationen über diese Daten zu generieren, die bei fundierten Entscheidungen hilfreich sind.

Es gibt verschiedene Tools für die Datenanalyse, Python, Microsoft Excel, Tableau, SaS usw. In diesem Artikel konzentrieren wir uns jedoch darauf, wie die Datenanalyse in Python durchgeführt wird. Genauer gesagt, wie es mit einer Python-Bibliothek namens gemacht wird Pandas.

Was ist Pandas??

Pandas ist eine Open-Source-Python-Bibliothek, die zur Datenmanipulation und zum Wrangling verwendet wird. Es ist schnell und hocheffizient und verfügt über Tools zum Laden verschiedener Arten von Daten in den Speicher. Es kann verwendet werden, um mehrere Datenformen umzugestalten, zu beschriften, zu indizieren oder sogar zu gruppieren.

Datenstrukturen in Pandas

Es gibt 3 Datenstrukturen in Pandas, nämlich;

  • Serie
  • DataFrame
  • Panel

Der beste Weg, um die drei zu unterscheiden, besteht darin, zu sehen, dass einer mehrere Stapel des anderen enthält. Ein DataFrame ist also ein Stapel von Serien und ein Panel ist ein Stapel von DataFrames.

Eine Reihe ist ein eindimensionales Array

Ein Stapel aus mehreren Serien erstellt einen zweidimensionalen DataFrame

Ein Stapel mehrerer DataFrames bildet ein dreidimensionales Panel

Die Datenstruktur, mit der wir am meisten arbeiten würden, ist der zweidimensionale DataFrame, der auch das Standarddarstellungsmittel für einige Datensätze sein kann, auf die wir möglicherweise stoßen.

Datenanalyse in Pandas

Für diesen Artikel ist keine Installation erforderlich. Wir würden ein Tool namens verwenden Labor erstellt von Google. Es ist eine Online-Python-Umgebung für Datenanalyse, maschinelles Lernen und KI. Es ist einfach ein Cloud-basiertes Jupyter-Notebook, auf dem fast jedes Python-Paket vorinstalliert ist, das Sie als Datenwissenschaftler benötigen würden.

Nun geht es weiter zu https://colab.research.google.com/notebooks/intro.ipynb. Sie sollten das unten sehen.

Klicken Sie in der oberen linken Navigation auf die Dateioption und dann auf die Option „Neues Notizbuch“. In Ihrem Browser wird eine neue Jupyter-Notizbuchseite angezeigt. Das erste, was wir tun müssen, ist, Pandas in unser Arbeitsumfeld zu importieren. Wir können dies tun, indem wir den folgenden Code ausführen;

Pandas als pd importieren

Für diesen Artikel würden wir einen Immobilienpreisdatensatz für unsere Datenanalyse verwenden. Der Datensatz, den wir verwenden würden, kann gefunden werden Hier. Als erstes möchten wir diesen Datensatz in unsere Umgebung laden.

Wir können das mit dem folgenden Code in einer neuen Zelle tun;

df = pd.read_csv (‘https://firebasestorage.googleapis.com/v0/b/ai6-portfolio-abeokuta.appspot.com/o/kc_house_data.csv?alt=media &Token = 6a5ab32c-3cac-42b3-b534-4dbd0e4bdbc0 ‘, sep =’, ‘)

Die .read_csv wird verwendet, wenn wir eine CSV-Datei lesen möchten, und wir haben eine sep-Eigenschaft übergeben, um zu zeigen, dass die CSV-Datei durch Kommas getrennt ist.

Wir sollten auch beachten, dass unsere geladene CSV-Datei in einer Variablen df gespeichert ist .

Wir brauchen die print () – Funktion in Jupyter Notebook nicht zu verwenden. Wir können einfach einen Variablennamen in unsere Zelle eingeben und Jupyter Notebook druckt ihn für uns aus.

Wir können das ausprobieren, indem wir df in eine neue Zelle eingeben und ausführen. Dadurch werden alle Daten in unserem Datensatz als DataFrame für uns ausgedruckt.

Wir möchten jedoch nicht immer alle Daten anzeigen. Manchmal möchten wir nur die ersten Daten und ihre Spaltennamen anzeigen. Wir können die Funktion df.head () verwenden, um die ersten fünf Spalten zu drucken, und df.tail (), um die letzten fünf zu drucken. Die Ausgabe von einem der beiden würde als solche aussehen;

Wir möchten nach Beziehungen zwischen diesen verschiedenen Zeilen und Spalten von Daten suchen. Die Funktion .describe () erledigt genau dies für uns.

 Wenn Sie df.describe () ausführen, erhalten Sie die folgende Ausgabe.

Wir können sofort erkennen, dass .describe () den Mittelwert, die Standardabweichung, die Minimal- und Maximalwerte sowie die Perzentile jeder einzelnen Spalte im DataFrame angibt. Dies ist besonders nützlich.

Wir können auch die Form unseres 2D-Datenrahmens überprüfen, um herauszufinden, wie viele Zeilen und Spalten er enthält. Wir können dies mit df.shape tun, das ein Tupel im Format (Zeilen, Spalten) zurückgibt..

Wir können auch die Namen aller Spalten in unserem DataFrame mit df.columns überprüfen.

Was ist, wenn wir nur eine Spalte auswählen und alle darin enthaltenen Daten zurückgeben möchten? Dies geschieht auf ähnliche Weise wie das Durchschneiden eines Wörterbuchs. Geben Sie den folgenden Code in eine neue Zelle ein und führen Sie ihn aus

df [‘Preis’]

Der obige Code gibt die Preisspalte zurück. Wir können noch weiter gehen, indem wir sie in einer neuen Variablen als solche speichern

Preis = df [‘Preis’]

Jetzt können wir jede andere Aktion ausführen, die für einen DataFrame für unsere Preisvariable ausgeführt werden kann, da dies nur eine Teilmenge eines tatsächlichen DataFrame ist. Wir können Sachen wie df.head (), df.shape usw. Machen..

Wir könnten auch mehrere Spalten auswählen, indem wir eine Liste von Spaltennamen an df als solche übergeben

data = df [[‘Preis’, ‘Schlafzimmer’]]

Oben werden Spalten mit den Namen “Preis” und “Schlafzimmer” ausgewählt. Wenn wir data.head () in eine neue Zelle eingeben, haben wir Folgendes

Die obige Methode zum Schneiden von Spalten gibt alle Zeilenelemente in dieser Spalte zurück. Was ist, wenn wir eine Teilmenge von Zeilen und eine Teilmenge von Spalten aus unserem Dataset zurückgeben möchten? Dies kann mit .iloc erfolgen und wird ähnlich wie Python-Listen indiziert. Also können wir so etwas machen

df.iloc [50 :, 3]

Dies gibt die 3. Spalte von der 50. Zeile bis zum Ende zurück. Es ist ziemlich ordentlich und genauso wie das Schneiden von Listen in Python.

Lassen Sie uns nun einige wirklich interessante Dinge tun. Unser Datensatz für den Immobilienpreis enthält eine Spalte mit dem Preis eines Hauses und eine weitere Spalte mit der Anzahl der Schlafzimmer, die ein bestimmtes Haus hat. Der Immobilienpreis ist ein kontinuierlicher Wert, daher ist es möglich, dass wir nicht zwei Häuser mit demselben Preis haben. Aber die Anzahl der Schlafzimmer ist etwas diskret, so dass wir mehrere Häuser mit zwei, drei, vier Schlafzimmern usw. Haben können.

Was ist, wenn wir alle Häuser mit der gleichen Anzahl von Schlafzimmern erhalten und den Durchschnittspreis für jedes einzelne Schlafzimmer ermitteln möchten? Es ist relativ einfach, dies bei Pandas zu tun.

df.groupby (‘Schlafzimmer’) [‘Preis’] .mean ()

Das obige gruppiert zuerst den DataFrame nach den Datensätzen mit identischer Schlafzimmernummer unter Verwendung der Funktion df.groupby (). Dann weisen wir ihn an, nur die Schlafzimmerspalte anzugeben und die Funktion .mean () zu verwenden, um den Mittelwert jedes Hauses im Datensatz zu ermitteln.

Was ist, wenn wir das Obige visualisieren wollen? Wir möchten in der Lage sein zu überprüfen, wie sich der Durchschnittspreis für jede einzelne Schlafzimmernummer ändert. Wir müssen nur den vorherigen Code mit einer .plot () -Funktion als solcher verketten.

df.groupby (‘Schlafzimmer’) [‘Preis’] .mean (). plot ()

Wir werden eine Ausgabe haben, die so aussieht.

Das Obige zeigt uns einige Trends in den Daten. Auf der horizontalen Achse haben wir eine bestimmte Anzahl von Schlafzimmern (Beachten Sie, dass mehr als ein Haus X Anzahl von Schlafzimmern haben kann). Auf der vertikalen Achse haben wir den Mittelwert der Preise in Bezug auf die entsprechende Anzahl von Schlafzimmern auf der horizontalen Achse Achse. Wir können jetzt sofort feststellen, dass Häuser mit 5 bis 10 Schlafzimmern viel mehr kosten als Häuser mit 3 Schlafzimmern. Es wird auch deutlich, dass Häuser mit etwa 7 oder 8 Schlafzimmern viel mehr kosten als Häuser mit 15, 20 oder sogar 30 Zimmern.

Informationen wie die oben genannten sind der Grund, warum die Datenanalyse sehr wichtig ist. Wir können nützliche Erkenntnisse aus den Daten gewinnen, die ohne Analyse nicht sofort oder gar nicht zu bemerken sind.

Fehlende Daten

Nehmen wir an, ich nehme an einer Umfrage teil, die aus einer Reihe von Fragen besteht. Ich teile einen Link zur Umfrage mit Tausenden von Menschen, damit sie ihr Feedback geben können. Mein letztendliches Ziel ist es, eine Datenanalyse für diese Daten durchzuführen, damit ich einige wichtige Erkenntnisse aus den Daten gewinnen kann.

Jetzt könnte viel schief gehen, einige Vermesser fühlen sich möglicherweise unwohl, wenn sie einige meiner Fragen beantworten und sie leer lassen. Viele Leute könnten dasselbe für einige Teile meiner Umfragefragen tun. Dies wird möglicherweise nicht als Problem angesehen, aber stellen Sie sich vor, ich würde in meiner Umfrage numerische Daten erfassen, und ein Teil der Analyse erforderte, dass ich entweder die Summe, den Mittelwert oder eine andere arithmetische Operation erhalte. Mehrere fehlende Werte würden zu vielen Ungenauigkeiten in meiner Analyse führen. Ich muss einen Weg finden, um diese fehlenden Werte zu finden und durch einige Werte zu ersetzen, die einen engen Ersatz für sie darstellen könnten.

Pandas bieten uns eine Funktion zum Auffinden fehlender Werte in einem DataFrame namens isnull ().

Die Funktion isnull () kann als solche verwendet werden.

df.isnull ()

Dies gibt einen DataFrame von Booleschen Werten zurück, der uns mitteilt, ob die ursprünglich dort vorhandenen Daten wirklich fehlten oder fälschlicherweise fehlten. Die Ausgabe würde als solche aussehen;


Wir brauchen einen Weg, um all diese fehlenden Werte ersetzen zu können. Meistens kann die Auswahl fehlender Werte als Null angenommen werden. Manchmal kann es als Mittelwert aller anderen Daten oder vielleicht als Mittelwert der Daten um ihn herum genommen werden, abhängig vom Datenwissenschaftler und dem Anwendungsfall der zu analysierenden Daten.

Um alle fehlenden Werte in einem DataFrame zu füllen, verwenden wir die als solche verwendete Funktion .fillna ().

df.fillna (0)

Oben füllen wir alle leeren Daten mit dem Wert Null. Es kann auch eine andere Zahl sein, die wir angeben.

Die Bedeutung von Daten kann nicht überbetont werden, sie helfen uns, Antworten direkt aus unseren Daten selbst zu erhalten!. Die Datenanalyse sei das neue Öl für die digitale Wirtschaft.

Alle Beispiele in diesem Artikel finden Sie Hier.

Weitere Informationen finden Sie unter Datenanalyse mit Python und Pandas Online-Kurs.

STICHWORTE:

  • Python

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map