[PYTHON] Versuchen Sie schnell, Ihren Datensatz mit Pandas zu visualisieren

Bisher als Plotten mit pandas + matplotlib [verschiedene Datenplots mit Pandas + matplotlib]( Wir haben Dinge wie http://qiita.com/ynakayama/items/68eff3cb146181329b48) und Datenvisualisierungsmethode von matplotlib (+ pandas) eingeführt.

Auszug und Prozess Wenn Sie auf die Daten herabblicken, wird der Fluss bis zur Visualisierung erneuert. Lass uns organisieren und folgen.

Machen Sie den Datensatz zu einem Pandas-Objekt

Zuerst bringen wir den Datensatz in die Welt der Pandas, die zwei Hauptströme hat.

  1. Lesen aus einer externen Datei wie einer CSV-Datei mit Funktionen wie pd.read_csv und pd.read_table
  2. So konvertieren Sie assoziative Array- (Wörterbuch-) Objekte usw. in DataFrame

Von diesen wird 1. verwendet, wenn bereits strukturierte Daten vorhanden sind, die wie in einer externen Datei verwendet werden können. Wenn Sie beispielsweise eine Datei mit dem Namen iris.csv haben, machen Sie sie wie folgt zu einem Pandas-Objekt.

df = pd.read_csv("iris.csv")

Verwenden Sie 2., wenn Sie die Daten verarbeiten möchten, die beim Extrahieren oder Verarbeiten mit Python-Code in gewissem Umfang mit Pandas generiert wurden. pandas hat umfangreiche Dokumentation, daher möchten Sie möglicherweise darauf verweisen. Die Funktion from_dict konvertiert das Wörterbuchobjekt direkt in einen Datenrahmen. Wenn Sie den Index explizit angeben möchten, können Sie die Funktion from_records verwenden.

df = pd.DataFrame.from_records(my_dic, index=my_array)

Holen Sie sich die Translokationsmatrix

In Datensätzen sind die X- und Y-Achse häufig die entgegengesetzten Perspektiven für den Betrachter. Selbst in einem solchen Fall ist es immer einfach, die .T-Methode Transfer Matrix zu verwenden, wenn es sich um einen Pandas-Datenrahmen handelt Sie können A1% 8C% E5% 88% 97) erhalten. Dies ist eine sehr häufige Verwendung und sollte in Erinnerung bleiben.

dft = df.T

In pandas textbook scheint df = df.T oft gesetzt zu sein, aber ich bevorzuge die zerstörungsfreie Konvertierung wie oben. ..

Interaktives Plotten mit IPython

Das Schreiben von Code, der matplotlib verwendet, erfordert ebenfalls Versuch und Irrtum. Zu diesem Zeitpunkt ist es effizient, die Schritte des schnellen Zeichnens und Überprüfens der Abbildung des Datenrahmens auf IPython zu wiederholen.

Mit der Option ipython -i können Sie ein Python-Skript als Argument angeben, mit dem Sie die interaktive Shell bedienen können, während Sie dieses Skript ausführen. Das ist sehr praktisch.

Wenn Sie beispielsweise eine Klasse wie diese haben:

class MyClass:
    def __init__(self, args):
        self.my_var = args[1]
        self.my_array = []
        self.my_dic = {}

    def my_method(self):
        ...

Wenn Sie die Shell als ipython -i my_class.py starten, wird MyClass geladen und Sie können das Objekt wie folgt abrufen.

my_instance = MyClass()
arr = my_instance.my_array
dic = my_instance.my_dic

Wenn Sie my_method zum Speichern von Daten in einer Instanzvariablen wie self.my_dic verwendet haben, können Sie die Daten aus dieser Instanzvariablen wie oben abrufen und von hier aus zur interaktiven Visualisierung zeichnen.

Typische Visualisierungsmethode des Datenrahmens

Erstens sind es die üblichen zweidimensionalen Daten, wenn sie in einen Datenrahmen konvertiert werden können, so dass gesagt werden kann, dass die zu erledigende Arbeit bis zu einem gewissen Grad offensichtlich geworden ist, wenn sie bisher erklärt wurde.

Hier sind einige Visualisierungsmethoden, die Sie zuerst ausprobieren sollten.

Als Datensatz wird die bekannte Iris verwendet.

Wir haben die Details der Abbildungen bereits mehrfach vorgestellt. Weitere Informationen finden Sie in Frühere Artikel.

Streudiagramm-Matrix

Erstens ist die Standard-Streudiagrammmatrix.

plt.figure() #Bereiten Sie eine Leinwand vor

from pandas.tools.plotting import scatter_matrix
scatter_matrix(df) #Zeichnen Sie eine Streudiagrammmatrix

plt.show() #Bei der interaktiven Anzeige von Bildern
plt.savefig("1.png ") #Bei der Ausgabe in eine Bilddatei

hoge2.png

Dies ist ein Suguremono, mit dem Sie die Korrelation zwischen jeder Spalte und jeder Zeile aus der Vogelperspektive betrachten können. Wenn Sie Ihren Geist stabilisieren können, indem Sie sich die Streudiagramm-Prozession ansehen, werden Sie daran gewöhnt sein.

Einfache Handlung

Danach werden der Schritt zum Vorbereiten der Leinwand und der Schritt zum Ausgeben des Bildes weggelassen.

df.plot(legend=True)

hoge3.png

Wie ich schon oft erwähnt habe, ist Pandas standardmäßig True. Wenn Sie die Abbildung aufgrund der Erklärung nicht gut sehen können, können Sie legend = False setzen.

Gestapeltes Balkendiagramm

Wenn Sie versuchen, die ersten 10 Datenrahmen zu zeichnen, sieht dies folgendermaßen aus.

df10 = df.head(10)
df10.plot(kind='barh', stacked=True, alpha=0.5, legend=True)

1.png

Balkendiagramm

Balkendiagramme sind nützlich, wenn Sie in einem eindimensionalen Vektorraum eingrenzen und visualisieren möchten.

df['sepal width'].hist()

hoge.png

Flächendiagramm

Dies ist nützlich, um Änderungen in mehreren Daten im Laufe der Zeit zu verfolgen.

df.plot(kind='area', legend=True)

3.png

Zusammenfassung

Wie wäre es mit. Wenn Sie sich daran gewöhnt haben, werden Sie unwissentlich die interaktive Shell verwenden, um zu zeichnen, wenn Sie den Daten gegenüberstehen. Sie können sehen, wie produktiv IPython ist, das schnelles Ausprobieren ermöglicht, und pandas + matplotlib, das nahtlos mit Python verwendet werden kann, als produktives Tool.

Recommended Posts

Versuchen Sie schnell, Ihren Datensatz mit Pandas zu visualisieren
Mit Pandas schnell visualisieren
Versuchen Sie, mit Pandas in ordentliche Daten umzuwandeln
Datensätze mit Pandas verarbeiten (1)
Konvertieren Sie 202003 bis 2020-03 mit Pandas
Datensätze mit Pandas verarbeiten (2)
Zusammenführen von Datensätzen mit Pandas
Versuchen Sie, den Boden durch Rekursion herauszufordern
Stellen wir uns den Raum mit Raspeltorte vor, Teil 1
Probieren Sie die DB-Operation mit Python aus und visualisieren Sie sie mit d3
Ein Beispiel, um Faktorisierungsmaschinen schnell mit fastFM auszuprobieren
Versuchen Sie, sich mit ONNX Runtime zu profilieren
Ich möchte ○○ mit Pandas machen
Versuchen Sie, Audio mit M5 STACK auszugeben
Versuchen Sie, Farbfilme mit Python zu reproduzieren
Versuchen Sie, sich mit Python bei qiita anzumelden
Ich habe versucht, AutoEncoder mit TensorFlow zu visualisieren
Versuchen Sie, Kirschblüten mit xg Boost vorherzusagen
Erster Versuch von YDK mit Cisco IOS-XE
Versuchen Sie, ein Bild mit Entfremdung zu erzeugen
Versuchen Sie, Ihr eigenes AWS-SDK mit bash zu erstellen
Versuchen Sie, das Fizzbuzz-Problem mit Keras zu lösen
Versuchen Sie, das Mensch-Maschine-Diagramm mit Python zu lösen
Ich habe versucht, mit OpenCV Bewegungen schnell zu erkennen
Versuchen Sie, das Dokument der Azure-Dokumentdatenbank mit pydocumentdb zu extrahieren
Versuchen Sie, mit Python eine Lebenskurve zu zeichnen
[Python] Wie man Excel-Dateien mit Pandas liest
So testen Sie den Friends-of-Friends-Algorithmus mit pyfof
Versuchen Sie, in Python einen "Entschlüsselungs" -Code zu erstellen
Visualisieren Sie Daten interaktiv mit TreasureData, Pandas und Jupyter.
Versuchen Sie, mit Python eine Diedergruppe zu bilden
Versuchen Sie, Client-FTP mit Pythonista am schnellsten zu machen
Versuchen Sie, Fische mit Python + OpenCV2.4 (unvollendet) zu erkennen.
Versuchen Sie, das Programmier-Herausforderungsbuch mit Python3 zu lösen
Ich habe versucht, Faster R-CNN mit Pytorch auszuführen
Lassen Sie uns ein Befehls-Standby-Tool mit Python erstellen
Erste Schritte mit Pandas: Grundkenntnisse, an die Sie sich zuerst erinnern sollten
Versuchen Sie, mit Tkinter in Python dynamisch einen Checkbutton zu erstellen
Versuchen Sie, das Problem der Zuweisung von Schulungsärzten mit Python zu lösen
Versuchen Sie, den Wechselkurs (FX) mit nicht tiefem maschinellem Lernen vorherzusagen
Versuchen Sie, mit MVC eine RESTful-API mit Flask 1.0.2 zu erstellen
Zugriff mit dem Cache beim Lesen von_json mit Pandas
So extrahieren Sie Nullwerte und Nicht-Nullwerte mit Pandas
So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
So geben Sie die CSV eines mehrzeiligen Headers mit Pandas aus
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
Versuchen Sie, den Inhalt von Word mit Golang zu erhalten
[Neo4J] ④ Versuchen Sie, die Diagrammstruktur mit Cypher zu handhaben
[Python] Ein Memo zum vertikalen Schreiben von CSV mit Pandas
Versuchen Sie, Anfragen von iPhone mit Burp Suite zu manipulieren
Konvertieren Sie numerische Variablen mit Pandas in kategoriale Variablen, indem Sie einen Schwellenwert festlegen
So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
Versuchen Sie es mit Python.
Verwendung von Pandas 2
Bootstrap-Sampling mit Pandas
Pandas lernen mit Chemoinfomatik