Ich werde erklären, wie man Pandas auf leicht verständliche Weise benutzt. Wenn Sie diesen Artikel richtig gelesen haben, ist er in Ordnung.
Wenn Sie ein absoluter Anfänger sind, hören Sie sich einfach die CSV-Datei an, bevor Sie mit dem Studium von Pandas beginnen.
CSV (durch Kommas getrennter Wert) ist eine Datei, die wörtlich lautet: "Werte werden durch Kommas (,) getrennt". Schauen wir uns ein konkretes Beispiel an. Angenommen, Sie haben eine Datei wie die folgende.
Verwendete Sprache,Langjährige Erfahrung,jährliches Einkommen
Python,10,"¥60,000,000.00"
Ruby,2,"¥3,500,000.00"
Swift,4,"¥5,000,000.00"
Wenn Sie dies mit Excel oder Google Spreadsheet öffnen, wird es wie folgt angezeigt. Fazit Das einzige, was Sie beachten sollten, ist die durch "," getrennte Version der Excel-Datei.
・ Was ist Pandas? ・ Installationsverfahren ・ Grunddatentyp ・ So rufen Sie Daten ab (loc, iloc, head, tail usw.) ・ Lesen und Ausgeben von Daten ・ Datensortierung ・ Verarbeitung fehlender Werte Daten bearbeiten ・ Serienausgabe ・ DataFrame ・ Statistische Verarbeitung
Pandas ist eine Bibliothek zur effizienten Datenanalyse in Python. Es ist irgendwie abstrakt und ich weiß nicht, was es ist, also werde ich konkret darüber sprechen. Bei der Durchführung von maschinellem Lernen oder Datenanalyse sind die Daten für dieses Lernen häufig nicht für ein ordnungsgemäßes Lernen organisiert. Daher können Sie mit diesen Pandas die Daten bequem gestalten. Dieser Prozess vor dem Ausführen dieses maschinellen Lernens wird als Datenvorverarbeitung bezeichnet. Apropos Datenvorverarbeitung: Verwenden Sie Pandas! !! !! !! !! !! !! !! !! Bitte bedenke.
Wenn Sie Python mit Anaconda installiert haben, ist es wahrscheinlich bereits installiert. Wenn nicht installiert
pip install pandas
Um Pandas verwenden zu können, müssen Sie die Pandas-Bibliothek laden.
import pandas as pd
Es ist ärgerlich, es jedes Mal mit Pandas zu nennen, deshalb benutze ich normalerweise pd.
Series Serie ist ein Datentyp mit nur einer Spalte. Um es schwierig auszudrücken, es ist eine eindimensionale Datenstruktur.
import pandas as pd
l = [1,2,3,4,5]
series = pd.Series(l)
print(series)
==========>
0 1
1 2
2 3
3 4
4 5
dtype: int64
Die Nummer links ist der Index (Zeilenbeschriftung) und die Nummer rechts sind die Seriendaten.
Ein Datenrahmen ist eine zweidimensional beschriftete Datenstruktur, die die am häufigsten verwendete Datenstruktur in Pandas ist. Es ist leicht zu verstehen, wenn Sie sich die Daten von Excel und Tabellen vorstellen.
import pandas as pd
df = pd.DataFrame({
'Programmiersprache' :['Python', 'Ruby', 'Go'],
'Langjährige Erfahrung' : [1, 1, 2],
'jährliches Einkommen' : [3000000, 2800000, 16900000]
})
print(df)
===========>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens
0 Python 1 3000000
1 Ruby 1 2800000
2 Go 2 16900000
Ein solches Bild
Übrigens wird der Datenrahmentyp automatisch nach der Zeilenbezeichnung (Index) sortiert, sodass sich die Reihenfolge ändern kann.
Für die Serie können Sie mit der aktuellen Linienbezeichnung darauf zugreifen.
import pandas as pd
l = [1,2,3,4,5]
series = pd.Series(l)
print(series[1])
==========>
2
Das Problem ist hier. Es gibt verschiedene Möglichkeiten, es herauszunehmen. Schauen wir es uns also der Reihe nach an. Nehmen Sie als Voraussetzung an, dass Sie über die folgenden Daten verfügen.
import pandas as pd
df = pd.DataFrame({
'Programmiersprache' :['Python', 'Python','Ruby', 'Go','C#','C#'],
'Langjährige Erfahrung' : [1, 1, 2, 3, 1,3],
'jährliches Einkommen' : [3000000, 2800000, 16900000,1230000,2000000,500000],
'Alter' : [21,22,34,55,11,8]
})
print(df)
============>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
0 Python 1 3000000 21
1 Python 1 2800000 22
2 Ruby 2 16900000 34
3 Go 3 1230000 55
4 C# 1 2000000 11
5 C# 3 500000 8
print(df['Programmiersprache'])
#Oder df.'Programmiersprache'Es können jedoch ähnliche Ergebnisse erzielt werden.
=================>
0 Python
1 Python
2 Ruby
3 Go
4 C#
5 C#
Name:Programmiersprache, dtype: object
print(df[0:2])
===============>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
0 Python 1 3000000 21
1 Python 1 2800000 22
Ich werde es im Detail erklären, weil es so aussieht, als würde es nicht als Spalte verstanden werden. Wenn Sie den Schlüssel normalerweise mit df [] eingeben, stellen Pandas fest, dass dies ein "Spaltenname" ist. Wenn Sie df [Slice] eingeben, wird dies von Pandas als "Zeilenbeschriftung" betrachtet.
Geben Sie diesmal sowohl Zeilen als auch Spalten an. loc Grundlegende Verwendung von loc loc [Zeilenspezifikation, Spaltenspezifikation] Geben Sie in loc den Zeilennamen und den Spaltennamen an. iloc Grundlegende Verwendung von iloc iloc [Zeilennummer, Spaltennummer] Geben Sie in iloc die Zeilennummer und die Spaltennummer an.
import pandas as pd
df = pd.DataFrame({
'Programmiersprache' :['Python', 'Python','Ruby', 'Go','C#','C#'],
'Langjährige Erfahrung' : [1, 1, 2, 3, 1,3],
'jährliches Einkommen' : [3000000, 2800000, 16900000,1230000,2000000,500000],
'Alter' : [21,22,34,55,11,8]
})
print(df.loc[0:2,'Programmiersprache'])#Dies beinhaltet auch den letzten Wert des Slice. Es ist nur der Name der Linie.
print(df.iloc[0:2,0])#Dies beinhaltet nicht den letzten Wert des Slice!
=================>
0 Python
1 Python
2 Ruby
Name:Programmiersprache, dtype: object
0 Python
1 Python
Name:Programmiersprache, dtype: object
Bitte lesen Sie die Kommentare vorerst. Es gibt einige Unterschiede in den Ausgabeergebnissen. Übrigens, wenn Sie auf eine Spalte zugreifen, die nicht existiert, wird NaN zurückgegeben.
Wenn Sie head () verwenden, die ersten 5 Fälle Sie können tail () verwenden, um auf die letzten 5 Elemente zuzugreifen.
print(df.head())
==================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
0 Python 1 3000000 21
1 Python 1 2800000 22
2 Ruby 2 16900000 34
3 Go 3 1230000 55
4 C# 1 2000000 11
print(df.tail())
==================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
1 Python 1 2800000 22
2 Ruby 2 16900000 34
3 Go 3 1230000 55
4 C# 1 2000000 11
5 C# 3 500000 8
#Sie können angeben, auf wie viele Elemente mit einem Argument zugegriffen werden soll.
print(head(2))
====================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
0 Python 1 3000000 21
1 Python 1 2800000 22
print(tail(2))
=====================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
4 C# 1 2000000 11
5 C# 3 500000 8
Mit query () können Sie den Wert des Datenrahmens angeben und die Zeile extrahieren, die ihn enthält. Sie wird normalerweise mit dem Vergleichsoperator angegeben.
import pandas as pd
df = pd.DataFrame({
'Programmiersprache' :['Python', 'Python','Ruby', 'Go','C#','C#'],
'Langjährige Erfahrung' : [1, 1, 2, 3, 1,3],
'jährliches Einkommen' : [3000000, 2800000, 16900000,1230000,2000000,500000],
'Alter' : [21,22,34,55,11,8]
})
print(df.query('Langjährige Erfahrung<= 2'))
========================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
0 Python 1 3000000 21
1 Python 1 2800000 22
2 Ruby 2 16900000 34
4 C# 1 2000000 11
Pandas hat die Möglichkeit, Daten einzugeben und die Daten nach der Manipulation als Datei auszugeben. Hier werden nur die Funktionen vorgestellt.
import pandas as pd
pd.read_CSV('Dateiname', header, sep,...)#read_In CSV ist das Standardtrennzeichen ",」
pd.read_table('Dateiname', header, sep....)# read_In der Tabelle lautet das Standardtrennzeichen "\t」
#Als Ausgabe,
pd.to_csv('Dateiname')
pd.to_excel('Dateiname')
pd.to_html('Dateiname')
#Und so weiter.
Es gibt zwei Hauptmethoden.
import pandas as pd
df = pd.DataFrame({
'Programmiersprache' :['Python', 'Python','Ruby', 'Go','C#','C#'],
'Langjährige Erfahrung' : [1, 1, 2, 3, 1,3],
'jährliches Einkommen' : [3000000, 2800000, 16900000,1230000,2000000,500000],
'Alter' : [21,22,34,55,11,8]
})
print(df.sort_index(ascending=False))
===============================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
5 C# 3 500000 8
4 C# 1 2000000 11
3 Go 3 1230000 55
2 Ruby 2 16900000 34
1 Python 1 2800000 22
0 Python 1 3000000 21
print(df.sort_values(by="jährliches Einkommen") )
=================================>
Programmsprache Jahrelange Erfahrung Jahre des Einkommens Alter
5 C# 3 500000 8
3 Go 3 1230000 55
4 C# 1 2000000 11
1 Python 1 2800000 22
0 Python 1 3000000 21
2 Ruby 2 16900000 34
Bei der Datenanalyse und beim maschinellen Lernen werden Sie auf viele fehlende Werte stoßen. Fehlende Werte sind die fehlenden Teile der Daten. (Zum Beispiel die unbeantwortete Spalte des Fragebogens) coming soon....
Recommended Posts