построение столбцов данных через цикл - PullRequest
2 голосов
/ 19 марта 2020

У меня есть следующий код:

dates = pd.date_range('20130101', periods=6)
df = pd.DataFrame(np.random.randn(6, 6), index=dates, columns=["a","b","c","a_x","b_x","c_x"])

, что приводит к следующему:

                a           b            c         a_x         b_x         c_x
2013-01-01  -0.871681   0.938965    -0.804039   0.329384    -1.211573   0.160477
2013-01-02  1.673895    2.017654    2.181771    0.336220    0.389709    0.246264
2013-01-03  -0.670211   -0.561792   -0.747824   -0.837123   0.129040    1.044153
2013-01-04  -0.571023   -0.430249   0.024393    1.017622    1.072909    0.816249
2013-01-05  0.074952    -0.119953   0.245248    2.658196    -1.525059   1.131054
2013-01-06  0.203816    0.379939    -0.162919   -0.674444   -0.650636   0.415143

Я хочу создать простые линейные графики - всего три, каждый из которых наносит на график пары:

a and a_x, b and b_x and c and c_x

Я знаю, как генерировать диаграммы, но так как таблица большая и имеет тот же шаблон в соглашениях об именах столбцов, я думал, возможно ли это сделать с помощью l oop. Например, исходная таблица будет иметь column d and column d_x, а также column e and e_x et c.

1 Ответ

1 голос
/ 19 марта 2020

Вы можете использовать groupby вдоль axis=1, сгруппированные по первому элементу имен столбцов разделения:

for _, data in df.groupby(df.columns.str.split('_').str[0], axis=1):
    data.plot()

[out]

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...