Я пытаюсь взять данные в формате CSV и генерировать графики разброса для каждого столбца в кадре данных. Например, я прочитал в следующем с df=pandas.readcsv()
Итерация по столбцам с петлями в pandas dataframe
Sample AMP ADP ATP
1A 239847 239084 987374
1B 245098 241210 988950
2A 238759 200554 921032
2B 230029 215408 899804
Я хотел бы генерировать график рассеяния с использованием образца в качестве значений х, и области для каждого из столбцов.
Я использую следующий код с bokeh.plotting для построения каждого столбца вручную
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)
Это создает разброс участки успешно, но я хотел бы создать цикл для генерации графика рассеяния для каждого столбца. В моем полном наборе данных у меня есть более 500 столбцов, которые я хотел бы построить.
Я воспользовался ссылками для использования df.iteritems и df.itertuples для итерации через dataframes, но я не уверен, как получить результат, который я хочу.
Я попытался следующие:
for index, row in df.iteritems():
p = figure()
p.scatter(df['Sample'], df[row])
show(p)
Я ударил ошибку сразу:
raise KeyError('%s not in index' % objarr[mask] KeyError: "['1A' '1B' '2A' '2B'] not in index
Любое руководство? Заранее спасибо.