[PYTHON] Ich werde erklären, wie man Pandas auf leicht verständliche Weise benutzt.

Über diesen Artikel

Ich werde erklären, wie man Pandas auf leicht verständliche Weise benutzt. Wenn Sie diesen Artikel richtig gelesen haben, ist er in Ordnung.

Grundlegendes zu CSV-Dateien, bevor Sie mit Pandas beginnen

Wenn Sie ein absoluter Anfänger sind, hören Sie sich einfach die CSV-Datei an, bevor Sie mit dem Studium von Pandas beginnen.

Was ist eine CSV-Datei?

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. スクリーンショット 2020-06-14 8.57.57.png Fazit Das einzige, was Sie beachten sollten, ist die durch "," getrennte Version der Excel-Datei.

Inhaltsverzeichnis

・ 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

Was ist Pandas?

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.

Installationsverfahren

Wenn Sie Python mit Anaconda installiert haben, ist es wahrscheinlich bereits installiert. Wenn nicht installiert

pip install pandas

Benutze 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.

Datentypen (Serie und DataFrame)

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.

DataFrame

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 スクリーンショット 2020-06-14 9.51.27.png

Übrigens wird der Datenrahmentyp automatisch nach der Zeilenbezeichnung (Index) sortiert, sodass sich die Reihenfolge ändern kann.

So rufen Sie Daten ab

Serie

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

Datenrahmentyp

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

スクリーンショット 2020-06-14 9.54.46.png

Holen Sie sich eine bestimmte Spalte

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

Holen Sie sich eine bestimmte Zeile

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.

Holen Sie sich bestimmte "Spalten und Zeilen" (loc und iloc)

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.

Eigentlich bewegen

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.

Kopf () und Schwanz ()

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

Extrahieren Sie Zeilen durch Angabe von Bedingungen (Abfrage)

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

Dateneingabe / -ausgabe

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.

Daten sortieren

Es gibt zwei Hauptmethoden.

  1. Verwendung des Index (Zeilenname / Spaltenname) und Sortieren nach Wert ... sort_index ()
  2. So sortieren Sie nach Spaltenwerten ... sort_values ()
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

Umgang mit fehlenden Werten

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

Ich werde erklären, wie man Pandas auf leicht verständliche Weise benutzt.
Ich habe versucht zusammenzufassen, wie man Pandas von Python benutzt
Ich habe versucht zu erklären, wie der Artikelinhalt mit der MediaWiki-API auf leicht verständliche Weise anhand von Beispielen abgerufen werden kann (Python 3).
[Für Anfänger] Ich möchte die Anzahl der Lernerfahrungen leicht verständlich erklären.
[Deep Learning von Grund auf neu] Ich habe versucht, die Gradientenbestätigung auf leicht verständliche Weise zu erklären.
Verwendung von Pandas 2
[Python] Ich habe versucht, den kollektiven Typ (Satz) auf leicht verständliche Weise zusammenzufassen.
Ich habe versucht, Cpaw Level1 & Level2 Write Up auf leicht verständliche Weise zusammenzufassen
So erhalten Sie einen Überblick über Ihre Daten in Pandas
Verwendung von Klassen in Theano
Wie man nüchtern mit Pandas schreibt
[Python] Verwendung der Pandas-Serie
Verwendung von SQLite in Python
Wie man MySQL mit Python benutzt
Verwendung von ChemSpider in Python
[Python] Zusammenfassung der Verwendung von Pandas
[Einführung in Python] Wie verwende ich eine Klasse in Python?
[Pandas] Was ist set_option?
Ich habe versucht, das überwachte Lernen des maschinellen Lernens auch für Serveringenieure auf leicht verständliche Weise zu verstehen 1
Verwendung von Google Test in C-Sprache
So weisen Sie den Index im Pandas-Datenrahmen neu zu
Verwendung von Anacondas Interpreter mit PyCharm
Verwendung regulärer Ausdrücke in Python
So verwenden Sie Map in ViewPager von Android
Ich habe versucht, das überwachte Lernen des maschinellen Lernens auch für Serveringenieure auf leicht verständliche Weise zu verstehen 2
Lesen von CSV-Dateien mit Pandas
Verwendung ist und == in Python
Verwendung von pandas Timestamp und date_range
Verwendung der Python-Bildbibliothek in der Python3-Serie
So erhalten Sie Hilfe in einer interaktiven Shell
Zusammenfassung der Verwendung von MNIST mit Python
Wie man tkinter mit Python in Pyenv benutzt
Zeigen Sie Protokolle mit Ansible auf leicht verständliche Weise an
Einführung in Deep Learning (1) --Chainer wird Anfängern leicht verständlich erklärt.
Verwendung von xml.etree.ElementTree
Wie benutzt man Python-Shell
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
Hinweise zur Verwendung von tf.data
Verwendung von virtualenv
Wie benutzt man Seaboan?
Verwendung von Image-Match
Wie man Shogun benutzt
Ich habe versucht zusammenzufassen, wie man Matplotlib von Python verwendet
Ich möchte mich mit Backpropagation (tf.custom_gradient) (Tensorflow) selbst verwenden.
Verwendung von Virtualenv
Erklären Sie ausführlich, wie Sie mit Python einen Sound erzeugen
Verwendung von numpy.vectorize
Ich habe versucht zu verstehen, wie Pandas und multiple Co-Linearität unter Verwendung des Affairs-Datensatzes als Thema verwendet werden.
Ein Memorandum zur Verwendung von Keras 'keras.preprocessing.image
Wie man teilweise verwendet
Wie man Bio.Phylo benutzt
Verwendung von SymPy
Verwendung von WikiExtractor.py
Zugriff mit dem Cache beim Lesen von_json mit Pandas
Verwendung von IPython
Verwendung von virtualenv
Verwendung der Template-Engine in einer Dateianwendung von Pyramid
Wie benutzt man Matplotlib?
So erstellen Sie ein interaktives CLI-Tool mit Golang