2016-10-16 2 views
2

У меня есть кадр данных pandas, который содержит полиномиальные аппроксимации различных функций в заданных точках с переменными степенями до полиномиального приближения. Он устроен так, что первый столбец является именем функции, второй - значением x, затем столбцы 2-5 являются аппроксимациями с полиномом соответствующей степени. Я хотел бы сделать 1 график для каждой функции, показывающий сближение приближений к этой функции. Я знаю, что один способ сделать это - разорвать фрейм данных на отдельные кадры данных на основе имени первого столбца, но хотел знать, был ли более элегантный способ сделать это.Создание подзаголовков на основе определенного столбца в Pandas

Редактировать для разъяснения: Итак, в фрейме данных есть две несвязанные функции, скажем a и b. Второй столбец содержит значения x, затем третий и четвертый являются функциями x. Так может выглядеть

fnctn x y1 y2 
0  a 1 2 3 
1  a 2 3 2 
2  a 3 4 3 
3  a 4 3 4 
4  a 5 2 3 
5  b 1 1 2 
6  b 2 4 6 
7  b 3 9 12 
8  b 4 16 20 
9  b 5 25 30 

Я хотел бы участок y1 и y2, где первый столбец на одном участке, а на другом участке y1 и y2, где первый столбец б

ответ

1
import pandas 
from matplotlib import pyplot as plt 
df = pandas.DataFrame({'fnctn':['a','a','a','b','b','b'],'x':[1,2,3,1,2,3],'y1':[2,3,4,3,2,2],'y2':[3,2,3,4,3,2]}) 

In [19]: df 
Out[19]: 
    fnctn x y1 y2 
0  a 1 2 3 
1  a 2 3 2 
2  a 3 4 3 
3  b 1 3 4 
4  b 2 2 3 
5  b 3 2 2 

for f in set(df['fnctn']): 
    df[df['fnctn']==f].plot(x='x') 

a b

+0

Спасибо, но я, вероятно, следовало бы прояснить этот вопрос больше. Я хочу это сделать, но для каждой функции в первом столбце на отдельном графике. – user6247850

+0

Измененный ответ соответственно! – user86895

Смежные вопросы