Используйте значения столбцов панд данных для изменения других столбцов - PullRequest
0 голосов
/ 02 ноября 2018

У меня есть следующее dataframe, которое я хочу изменить:

  dir  hour  board_sign  pass
   1    5      d          294
   1    5      u          342
   1    6      d          1368
   1    6      u          1268
   1    7      d          3880
   1    7      u          3817

Я хочу использовать значения из "board_sign" в качестве новых столбцов, которые будут включать значения из столбца "pass", чтобы dataframe выглядело так:

  dir   hour     d     u
  1      5     294    342
  1      6     1368   1268
  1      7     3880   3817

Я уже пробовал несколько функций, таких как стек плавления и разбор стека, но, похоже, ни одна из них не дает желаемого результата, я также пробовал таблицу pivot_table, но ее трудно перебрать, так как мультииндекс.

Это похоже на простую операцию, но я просто не могу понять это правильно. Есть ли какая-либо другая функция, которую я могу использовать для этого?

Спасибо.

1 Ответ

0 голосов
/ 02 ноября 2018

Использование pivot_table:

df = df.pivot_table(index=['dir', 'hour'], columns='board_sign', values='pass').reset_index()
del df.columns.name

df
    dir hour    d   u
0   1     5   294   342
1   1     6   1368  1268
2   1     7   3880  3817
...