Цель
У меня есть набор данных df, который я хотел бы сгруппировать в столбец длины, взять его сумму и отобразить время окончания, которое с ним связано:
length start end duration
6330 12/17/2019 10:34:23 AM 12/17/2019 10:34:31 AM 8
57770 12/19/2019 5:19:56 PM 12/17/2019 5:24:19 PM 263
6330 12/17/2019 10:34:54 AM 12/17/2019 10:35:00 AM 6
6330 12/18/2019 4:36:44 PM 12/18/2019 4:37:13 PM 29
57770 12/19/2019 5:24:47 PM 12/19/2019 5:26:44 PM 117
Желаемый выход
length end total Duration
6330 12/18/2019 4:37:13 PM 43
57770 12/19/2019 5:26:44 PM 380
Dput
structure(list(length = c(6330L, 57770L, 6330L, 6330L, 57770L
), start = structure(c(1L, 4L, 2L, 3L, 5L), .Label = c("12/17/2019 10:34:23 AM",
"12/17/2019 10:34:54 AM", "12/18/2019 4:36:44 PM", "12/19/2019 5:19:56 PM",
"12/19/2019 5:24:47 PM"), class = "factor"), end = structure(c(1L,
3L, 2L, 4L, 5L), .Label = c("12/17/2019 10:34:31 AM", "12/17/2019 10:35:00 AM",
"12/17/2019 5:24:19 PM", "12/18/2019 4:37:13 PM", "12/19/2019 5:26:44 PM"
), class = "factor"), duration = c(8L, 263L, 6L, 29L, 117L)), class = "data.frame", row.names = c(NA,
-5L))
Это то, что я пробовал :, но как мне это сделать? также отобразить конечный столбец, который связан с «последним» значением длины? Например, длина 6330 имеет 3 конечных значения, к которым прикреплены 3 длительности:
12/17/2019 10:34:31 AM 8
12/17/2019 10:35:00 AM 6
12/18/2019 4:37:13 PM 29
12/18/2019 4:37:13 PM is the latest end time, so I would like to output the end time,
along with the sum of durations for this particular length value.
Требуемый вывод
length end total Duration
6330 12/18/2019 4:37:13 PM 43
57770 12/19/2019 5:26:44 PM 380
Вот что Я пытался:
import pandas as pd
import numpy as np
df1 = df.groupby('length')['duration'].sum()
Однако, это только выводит длину и общую продолжительность. Как бы я вывел длину, последний конец, а также общую продолжительность для этой конкретной длины?
Любая помощь приветствуется.