Панды добавляют значения в один столбец для всех одинаковых значений в другом столбце - PullRequest
0 голосов
/ 18 октября 2019

В предыдущем посте я нашел пару примеров таких же проблем, но ни один из них не касается ситуации с Python и pandas. я новичок в питоне, и я борюсь. Я добился огромного прогресса перед обновлением этого поста, я очень близок.

Я пытаюсь суммировать значения в «Количество» для всех дат, которые совпадают в столбце «Дата». В настоящее время они есть, но они не складываются, кроме того, я пытаюсь получить последние значения столбца, чтобы составить список.

вот мой код и как выглядит таблица:

df = pd.DataFrame( {'Date': ['01-01-2018', '01-01-2018','02-01-2018','03-01-2018','03-01-2018'], 'Quantity' : ['4','5','6','2','8'], 'Id':['5674','565','67433','2353','579']})


data = df.groupby(['Date','Quantity'])
result = data['Id'].unique()

print(result)

и результат:

Date        Quantity
01-01-2018  4            [5674]
            5             [565]
02-01-2018  6           [67433]
03-01-2018  2            [2353]
            8             [579]

результат не соответствует желаемому иЯ не уверен почему! Я ценю, есть какие-либо подсказки о том, как поступить. благодарю вас!

1 Ответ

1 голос
/ 18 октября 2019

Группировка по Data и применение следующих функций агрегирования

  • столбец Quantity: сумма
  • столбец Id: список
df.groupby(['Date']).agg({'Quantity': sum, 'Id': list}).reset_index()

Выход

    Date        Quantity    Id
0   01-01-2018  45          [5674, 565]
1   02-01-2018  6           [67433]
2   03-01-2018  28          [2353, 579]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...