Pandas GroupBy запрос - PullRequest
       3

Pandas GroupBy запрос

0 голосов
/ 24 февраля 2019

У меня есть кадр данных в пандах, который выглядит следующим образом: Снимок моего кадра данных панд

Теперь я хочу преобразовать кадр данных, как показано ниже, в котором объединяется атрибут «категория»разделенные разделителем для каждой переменной, основанной на отсортированном значении даты (% m /% d /% Y).Заказ с более ранней датой имеет свою категорию, указанную первой для соответствующего идентификатора клиента.

Желаемый / преобразованный фрейм данных

1 Ответ

0 голосов
/ 24 февраля 2019

Сначала преобразуйте столбец в to_datetime, затем sort_values и последний groupby с join:

df['Date'] = pd.to_datetime(df['Date'], format='%m/%d/%Y')

df = (df.sort_values(['customerid','Age','Date'])
        .groupby(['customerid','Age'])['category']
        .agg(', '.join)
        .reset_index())
print (df)
   customerid  Age               category
0           1   10  Electronics, Clothing
1           2   25      Grocery, Clothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...