Ich versuche, ein Datenformat aus CSV-Datei eingelesen, und erstellen Sie Streudiagramme für jede Spalte innerhalb des Datenrahmens. Zum Beispiel habe ich im Folgenden mit df=pandas.readcsv()
Iterieren über Spalten mit for-Schleifen in Pandas Dataframe
Sample AMP ADP ATP
1A 239847 239084 987374
1B 245098 241210 988950
2A 238759 200554 921032
2B 230029 215408 899804
Ich mag erzeugen ein Streudiagramm unter Verwendung von Probe als die x-Werte und die Bereiche für jede der Spalten lesen.
I den folgenden Code verwende mit bokeh.plotting jeder Spalte plotten manuell
import pandas
from bokeh.plotting import figure, show
df = pandas.read_csv("data.csv")
p = figure(x_axis_label='Sample', y_axis_label='Peak Area', x_range=sorted(set(df['Sample'])))
p.scatter(df['Sample'], df['AMP'])
show(p)
Dies erzeugt Plots scatter erfolgreich, aber ich möchte eine Schleife erzeugen, ein Streudiagramm für jede Spalte zu erzeugen. In meinem vollständigen Datensatz habe ich über 500 Spalten, die ich grafisch darstellen möchte.
Ich habe Referenzen für die Verwendung von df.iteritems und df.itertuples für die Iteration durch Datenrahmen gefolgt, aber ich bin mir nicht sicher, wie ich die gewünschte Ausgabe erhalten.
Ich habe folgendes versucht:
for index, row in df.iteritems():
p = figure()
p.scatter(df['Sample'], df[row])
show(p)
ich sofort einen Fehler getroffen:
raise KeyError('%s not in index' % objarr[mask] KeyError: "['1A' '1B' '2A' '2B'] not in index
Jede Führung? Danke im Voraus.