Панды - Сдвиг значений столбца - PullRequest
0 голосов
/ 20 мая 2018

У меня есть такой фрейм данных:

Имя_A ¦ id1 ¦ дата 1 ¦ 1

Имя_A ¦ id1 ¦ дата 2 ¦ 0

Имя_A ¦ id1 ¦ дата 3¦ 1

Имя_A ¦ id1 ¦ дата 4 ¦ 1

Имя_A ¦ id1 ¦ дата 5 ¦ 1

Имя_B ¦ id2 ¦ дата 6 ¦ 0

Имя_B ¦ id2 ¦ дата 7 ¦ 1

Имя_B ¦ id2 ¦ дата 8 ¦ 1

...

И я хотел бы получить это:

Имя_А ¦ дата1 ¦ 0

Имя_А ¦ дата2 ¦ 1

Имя_А ¦ дата3 ¦ 1

Имя_А ¦ дата4 ¦ 1

Имя_А ¦ дата5 ¦ NaN

Имя_B ¦ дата6 ¦ 1

Имя_B ¦ дата7 ¦ 1

Имя_B ¦ дата8 ¦ NaN

...

Я бынравится сдвигать значения в столбце для определенной группы имен.

Есть идеи / предложения?Спасибо.

Ответы [ 2 ]

0 голосов
/ 20 мая 2018

Если вы хотите сместить значения в последнем столбце, вы можете выбрать столбец с помощью iloc, а затем установить его в порядке упорядочения.Например:

df.iloc [:, 2] = [df.iloc [:, 2] [i] для i в [2,0,1]]

Это выбираетвторой столбец, а затем переупорядочиваем его так, чтобы третья запись строки теперь была первой, затем старая запись первой строки теперь стала второй и т. д.

0 голосов
/ 20 мая 2018

Вы можете сохранить его в словаре, И когда вы перезвоните, пропустите поле идентификатора.

dictionary_from_data_frame = {"NameA":["NameA","id1", "date 2", 0]}

Когда вы перезвоните,

_val = dictionary_from_data_frame["NameA"]

_val[0]|_val[2]|_val[3]

Надеюсь, вам идея.

Ура!

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