2016-07-04 6 views
-3

Ich habe große (~ 1 Million) Datensatz, der ungefähr so ​​aussieht ...Plotting mehrere Zeilen aus den Spalten von Dataframe (Python/Pandas)?

Age Wavelength Luminosity 

1  96   100 
1  97   150 
1  98   100 
2  96.5   90 
2  97   160 
2  97.5   120 
... 

ich es in einem Datenrahmen derzeit haben und wollen für alle Altersgruppen Wellenlänge vs Helle plotten. Wie bekomme ich Diagramme für jedes Alter auf einer Grafik?

+0

Das sieht nicht eine Frage Stackoverflow verwenden. Wie wäre es mit einer Frage auf http://programmers.stackexchange.com/? –

+1

@ Andrés bei der Verweisung anderer Sites ist es oft hilfreich, darauf hinzuweisen, dass [Cross-Posting] verpönt ist. (Http://meta.stackexchange.com/tags/cross-posting/info) – gnat

+2

Thema auf Programmierer? –

Antwort

0

können Sie pandas.core.groupby.DataFrameGroupBy.plot

In[1]: import pandas as pd 

In[2]: import numpy as np 

In[3]: dataset = pd.DataFrame({"Age": np.random.random_integers(1, 5, 100), "Wavelength": np.random.uniform(90, 100, 100), "Luminosity": np.random.random_integers(5, 15, 100) * 10}) 

In[4]: dataset.groupby("Age").plot(x="Wavelength", y="Luminosity", kind="scatter") 
Out[4]: 
Age 
1 Axes(0.125,0.1;0.775x0.8) 
2 Axes(0.125,0.1;0.775x0.8) 
3 Axes(0.125,0.1;0.775x0.8) 
4 Axes(0.125,0.1;0.775x0.8) 
5 Axes(0.125,0.1;0.775x0.8) 
dtype: object 
+0

Danke! Gibt es eine Möglichkeit, all das auf eine Grafik zu bringen? – Cmf55

+0

Die Funktion 'plot' gibt ein' matplotlib' 'AxesSubplot'-Objekt zurück. Sie könnten also mit dem Subplot-Gitter 'matplotlib' und diesem Achsenobjekt arbeiten. Ich habe es nicht versucht. –