Pandas Tutorial in Python

Pandas Tutorial in Python
In dieser Lektion über die Python Pandas-Bibliothek werden wir verschiedene Datenstrukturen untersuchen. In dieser Lektion werden wir hauptsächlich abdecken:
  • Was ist Pandas -Paket
  • Installation und Einstieg
  • Laden Sie Daten von CSVs in Pandas DataFrame
  • Was ist DataFrame und wie funktioniert es?
  • Datenrahmen schneiden
  • Mathematische Operationen über Datenframe

Das sieht nach viel zu decken aus. Lassen Sie uns jetzt anfangen.

Was ist Python Pandas -Paket?

Laut der Pandas Homepage: Pandas ist eine Open Source, BSD-lizenzierte Bibliothek, die leistungsstarke Datenstrukturen und Datenanalyse-Tools für die Python-Programmiersprache bietet, die leicht zu bedienende Datenstrukturen und Datenanalyse-Tools bieten.

Eines der coolsten Dinge an Pandas ist, dass das Lesen von Daten aus gemeinsamen Datenformaten wie CSV, SQL usw. Sehr einfach, was es in Produktionsnote -Anwendungen oder nur einigen Demo -Anwendungen gleichermaßen verwendbar macht.

Installieren Sie Python Pandas

Nur ein Hinweis vor dem Start des Installationsprozesses verwenden wir eine virtuelle Umgebung für diese Lektion, die wir mit dem folgenden Befehl erstellt haben:

Python -m Virtualenv Pandas
Quelle Pandas/bin/aktivieren

Sobald die virtuelle Umgebung aktiv ist, können wir die Pandas -Bibliothek innerhalb der virtuellen Umgebung installieren, damit Beispiele, die wir als nächstes erstellen, ausgeführt werden können:

PIP Installieren Sie Pandas

Oder wir können Conda verwenden, um dieses Paket mit dem folgenden Befehl zu installieren:

Conda Pandas installieren

Wir sehen so etwas, wenn wir den obigen Befehl ausführen:

Sobald die Installation mit Conda abgeschlossen ist, können wir das Paket in unseren Python -Skripten als:

Pandas als PD importieren

Lassen Sie uns jetzt Pandas in unseren Skripten verwenden.

Lesen Sie die CSV -Datei mit Pandas -Datenframes

Das Lesen einer CSV -Datei ist mit Pandas einfach. Zur Demonstration haben wir eine kleine CSV -Datei mit folgenden Inhalten erstellt:

Name, Rollno, Zulassungsdatum, Notfallkontakt
Shubham, 1,20-05-2012.9988776655
Gagan, 2,20-05-2009.8364517829
Oshima, 3,20-05-2003.5454223344
Vyom, 4,20-05-2009.1223344556
Ankur, 5,20-05-1999.9988776655
Vinod, 6,20-05-1999.9988776655
Vipin, 7,20-05-2002.9988776655
Ronak, 8,20-05-2007.1223344556
DJ, 9,20-05-2014.9988776655
VJ, 10,20-05-2015.9988776655

Speichern Sie diese Datei wie im Python -Skript im selben Verzeichnis. Wenn die Datei vorhanden ist, fügen Sie den folgenden Code -Snippet in eine Python -Datei hinzu:

Pandas als PD importieren
Schüler = PD.read_csv ("Schüler.CSV ")
Studenten.Kopf()

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Die Head () -Funktion in Pandas kann verwendet werden. Warten Sie, DataFrame? Wir werden im nächsten Abschnitt viel mehr über DataFrame untersuchen, aber nur verstehen, dass ein Datenrahmen eine n-dimensionale Datenstruktur ist, mit der Operationen über einen Satz von Daten gedrückt und analysiert werden können oder komplexe Vorgänge haben können.

Wir können auch sehen, wie viele Zeilen und Spalten die aktuellen Daten haben:

Studenten.Form

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Beachten Sie, dass Pandas auch die Anzahl der Zeilen ab 0 zählt.

Es ist möglich, nur eine Spalte in eine Liste mit Pandas zu erhalten. Dies kann mit Hilfe von erfolgen Indizierung in Pandas. Schauen wir uns einen kurzen Code -Snippet für dasselbe an:

student_names = student ['name']
student_names

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Aber das sieht nicht wie eine Liste aus, tut es? Nun, wir müssen explizit eine Funktion aufrufen, um dieses Objekt in eine Liste umzuwandeln:

student_names = student_names.auflisten()
student_names

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Nur für zusätzliche Informationen können wir sicherstellen, dass jedes Element in der Liste eindeutig ist und wir nur nicht leere Elemente auswählen, indem wir einige einfache Überprüfungen hinzufügen, wie:

student_names = student ['name'].Dropna ().einzigartig().auflisten()

In unserem Fall ändert sich die Ausgabe nicht, da die Liste bereits keine Foulwerte enthält.

Wir können auch einen Datenrahmen mit Rohdaten erstellen und die Spaltennamen zusammen mit diesem übergeben, wie im folgenden Code -Snippet gezeigt:

my_data = pd.Datenrahmen (
[
[1, "Chan"],
[2, "Smith"],
[3, "Winslet"]
],
Spalten = ["Rank", "Nachname"]
)
meine Daten

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Datenrahmen schneiden

Das Aufbrechen von Datenrahmen, um nur die ausgewählten Zeilen und Spalten zu extrahieren. Zu diesem Zweck ermöglicht es Pandas, DataFrame als und bei Bedarf mit Aussagen wie:

  • ILOC [: 4 ,:] - Wählt die ersten 4 Zeilen und alle Spalten für diese Zeilen aus.
  • ILOC [:,:] - Der vollständige Datenrahmen wird ausgewählt
  • ILOC [5:, 5:] - Zeilen ab Position 5 und Spalten ab Position 5 ab.
  • Iloc [:, 0] - die erste Spalte und alle Zeilen für die Spalte.
  • Iloc [9 ,:] - Die 10. Zeile und alle Spalten für diese Zeile.

Im vorherigen Abschnitt haben wir bereits Indexierung und Schnitt mit Spaltennamen anstelle der Indizes gesehen. Es ist auch möglich, das Schneiden mit Indexnummern und Spaltennamen zu mischen. Schauen wir uns einen einfachen Code -Snippet an:

Studenten.loc [: 5, 'name']

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Es ist möglich, mehr als eine Spalte anzugeben:

Studenten.loc [: 5, ['Name', 'Notfallkontakt']]]

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Seriendatenstruktur in Pandas

Genau wie Pandas (was eine mehrdimensionale Datenstruktur ist) ist eine Serie eine eindimensionale Datenstruktur in Pandas. Wenn wir eine einzelne Spalte aus einem Datenrahmen abrufen, arbeiten wir tatsächlich mit einer Serie:

Typ (Schüler ["Name"])

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Wir können auch unsere eigene Serie konstruieren, hier ist ein Code -Snippet für dasselbe:

Serie = PD.Serie (['Shubham', 3.7]))
Serie

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Wie aus dem obigen Beispiel klar, kann eine Serie auch mehrere Datentypen für dieselbe Spalte enthalten.

Boolesche Filter in Pandas DataFrame

Eine der guten Sache in Pandas ist, wie es ist, Daten aus einem Datenrahmen basierend auf einer Bedingung zu extrahieren. Wie das Extrahieren der Schüler nur dann, wenn die Rollzahl größer als 6 ist:

Roll_filter = Schüler ['Rollno']> 6
Roll_filter

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Nun, das haben wir nicht erwartet. Obwohl die Ausgabe ziemlich explizit darüber ist, welche Zeilen den von uns bereitgestellten Filter erfüllt haben, haben wir immer noch nicht die genauen Zeilen, die diesen Filter erfüllt. Stellt sich heraus Wir können Filter als DataFrame -Indizes verwenden sowie:

Schüler [Roll_filter]

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Es ist möglich, mehrere Bedingungen in einem Filter zu verwenden, damit die Daten auf einem kurzen Filter gefiltert werden können, wie:

Next_filter = (Studenten ['Rollno']> 6) & (Schüler ['Name']> 's'))
Schüler [Next_filter]

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Median berechnen

In einem Datenrahmen können wir auch viele mathematische Funktionen berechnen. Wir werden ein gutes Beispiel für die Berechnung der Median geben. Der Median wird für ein Datum berechnet, nicht für nur Zahlen. Schauen wir uns einen kurzen Code -Snippet für dasselbe an:

Daten = Studenten ['Datum der Zulassung'].ASType ('DateTime64 [NS]').quantil (.5)
Termine

Sobald wir das obige Code -Snippet ausgeführt haben, werden wir die folgende Ausgabe sehen:

Wir haben dies erreicht, indem wir zuerst die Datumsspalte indexieren und dann einen Datentyp für die Spalte bereitstellen, damit Pandas sie korrekt schließen kann.

Abschluss

In dieser Lektion haben wir verschiedene Aspekte der PANDAS -Verarbeitungsbibliothek untersucht, die wir mit Python verwenden können, um Daten aus verschiedenen Quellen in eine Datenframe -Datenstruktur zu sammeln, die es uns ermöglicht, auf einem Datensatz raffiniert zu arbeiten. Es ermöglicht uns auch, Daten zu erhalten, an denen wir momentan arbeiten möchten, und bietet viele mathematische Operationen.

Bitte teilen Sie Ihr Feedback zur Lektion auf Twitter mit @sbmaggarwal und @linuxHint mit.