[PYTHON] Wenden Sie Pandas Extraction Basic Syntax / Response auf matplotlib an

OverView Fassen Sie die grundlegende Verwendung der Spezifikationen zusammen, wenn Sie jedes Aggregationsergebnis mit Pandas erfassen. Im Folgenden wird "Daten" als DataFrame-Objekt bezeichnet.

Basisausgabe

Zeile am angegebenen Index abrufen

data[<index>]

#Zeile bei Index 1 abrufen
# (Da der Index bei 0 beginnt, ist dies die zweite Zeile)
data[1]

Rufen Sie die Spalte mit dem angegebenen Spaltennamen ab

data[<column_name>]

#Spaltenname'name'Um die Spalte von zu erhalten
data['name']

Holen Sie sich nur Zeilen, die die Bedingungen erfüllen

data[<Indexeinheit boolesch>]

Das boolesche Bild für jeden Index lautet wie folgt. In diesem Beispiel werden nur Zeilen mit den Indizes 0 und 2 extrahiert.

0     True
1    False
2     True
3    False

Ein Beispiel für das Generieren einer Booleschen Indexeinheit ist wie folgt. Sie können die Python-Beurteilungsformel so wie sie ist verwenden.

#Der Wert der Altersspalte beträgt 20 oder mehr
data['age'] >= 20

#Die Namensspalte lautet'Einschließlich des Charakters von "ro"
data['name'].str.contains('Ro')

#Die Namensspalte ist eindeutig
data[~data['name'].duplicated()]

Erweiterte Version

Lassen Sie uns verschiedene Antwortformate ausgeben, die auf "Nur die Zeilen abrufen, die die ** Bedingungen ** erfüllen" basieren, die am Ende der Basisausgabe behandelt wurden.

Hier sind die in "Daten" gespeicherten statistischen Daten wie folgt.

index height class grade weight
0 178.820262 a 2 65.649452
1 172.000786 b 5 55.956723
2 179.337790 a 4 56.480630
3 181.204466 b 1 62.908190
4 169.483906 a 4 65.768826
5 174.893690 b 4 56.188545

Holen Sie sich nur Zeilen, die die Bedingungen erfüllen

Lassen Sie uns zunächst die Grundlagen überprüfen.

data[data['class'] == 'a']

       height class grade weight
0   178.820262   a   2  65.649452
2   179.337790   a   4  56.480630
4   169.483906   a   4  65.768826

Rufen Sie jeden Wert einer Zeile ab, der die Bedingungen im Listenformat erfüllt

Durch Ausführen von ".values" wird jeder Wert eines Datensatzes in eine Liste umgewandelt, und eine Doppelliste, die ihn als Element für jeden Datensatz enthält, wird erfasst.

data[data['class'] == 'a'].values

[[178.8202617298383 'a' 2 65.64945209116877]
 [179.33778995074982 'a' 4 56.48062978465752]
 [169.4839057410322 'a' 4 65.76882607944115]]

Ruft Index- und Spaltenwerte für Zeilen ab, die die Bedingungen erfüllen

Führen Sie .loc aus, um den Index und den angegebenen Spaltenwert abzurufen. Dieses Format kann an den Plot von matplotlib übergeben werden.

data.loc[data['class'] == 'a', 'height']

0     178.820262
2     179.337790
4     169.483906

#Plotdarstellung mit Args
args = data.loc[data['class'] == 'a', 'height']
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(args)
plt.show()

image.png

Rufen Sie nur Spaltenwerte von Zeilen ab, die die angegebenen Bedingungen im Listenformat erfüllen

Mit ".values", dem Ergebnis von ".loc", können nur die angegebenen Spaltenwerte im Listenformat erhalten werden. Dies ist in hist auf matplotlib verfügbar.

data.loc[data['class'] == 'a', 'Höhe'].values

[178.82026173 179.33778995 169.48390574]

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.hist(data.loc[data['Klasse'] == 'a', 'Höhe'].values)
plt.show()

image.png

Je mehr Datensätze Sie haben, desto brillanter wird die Grafik!

Recommended Posts

Wenden Sie Pandas Extraction Basic Syntax / Response auf matplotlib an
Einführung in Ansible Teil 2 'Grundlegende Grammatik'
Grundlegende Grammatik von Python3
So wenden Sie mit matplotlib Marker nur auf bestimmte Daten an
Wenden wir die Markenbildfarbe auf die Farbkarte von matplotlib an!
Erste Schritte mit Pandas: Grundkenntnisse, an die Sie sich zuerst erinnern sollten
[Einführung in Python] Grundlegende Verwendung der Bibliothek matplotlib
Einführung in Python numpy pandas matplotlib (für ~ B3 ~ part2)