Перестановка данных Pandas - PullRequest
0 голосов
/ 06 мая 2018

Я занимаюсь спортом. Цель состоит в том, чтобы записать текущее время события и PreviousEventTime в игре. У меня есть образец набора данных по ссылке ниже.

https://drive.google.com/open?id=1DUNrWPFwrkZHpq_KeA4rZCJ94sbpUEDI

В этом файле 11 столбцов. события собираются на основе времени. Для этой перестановки я буду использовать следующие столбцы gsm_ID , время события столбцы

Я хочу создать новый столбец PreviousEventTime , который займет n-1 строку столбца eventdatetime . Это означает, что для каждого gsm_ID будет первое eventdatetime . Новый столбец будет представлять время следующего события по сравнению со столбцом времени.

gsm_ID eventdatetime PreviousEventTime

2462794 08/11/2017 18:46 08/11/2017 18:45

2462794 08/11/2017 18:49 08/11/2017 18:46

2462794 08/11/2017 19:13 08/11/2017 18:49

2462794 08/11/2017 19:31 08/11/2017 19:13

2462794 08/11/2017 20:09 08/11/2017 19:31

2462795 08/12/2017 17:39 08/12/2017 16:30

2462795 08/12/2017 17:44 08/12/2017 17:39

Приведенный выше пример только для двух игр. Вы можете различить по gsm_id . Строка for в PreviousEventTime всегда будет matchdatetime. У меня будет 100 игр. но процесс повторится, как указано выше.

Ваш совет был бы очень признателен. С Уважением, Зефир

1 Ответ

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

Сначала вы должны загрузить свой набор данных в кадр данных pandas после того, как мы сможем использовать метод shift.

last_val=df["Time"].iloc[-1]
df['second_eventime']=df['Time'].shift(-1)   #This will leave last column value as blank
df.iloc[-1, df.columns.get_loc('second_eventime')] = last_val #To Maintain the value at last row 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...