как группировать значения столбцов - PullRequest
1 голос
/ 09 апреля 2020

вот мои данные ниже: Фрейм данных - df_AW17

Product ID  Season  Division    Brand   Category    Sub Category    AW16 (Sales)    AW17 (Sales)

Blazer 1    AW17    Men's Wear  Brand 1 Top BLAZER      198

Blazer 2    AW16    Men's Wear  Brand 1 Top BLAZER  138 

Blazer 2    AW17    Men's Wear  Brand 1 Top BLAZER      270

Blazer 3    AW17    Men's Wear  Brand 1 Top BLAZER      27

Blazer 4    AW17    Men's Wear  Brand 1 Top BLAZER      192

Blazer-10   AW17    Women's Wear    Brand 1 Top BLAZER      15

Blazer-11   AW16    Women's Wear    Brand 1 Top BLAZER  10  

Blazer-11   AW17    Women's Wear    Brand 1 Top BLAZER      14

Blazer-12   AW17    Women's Wear    Brand 1 Top BLAZER      16

Blazer-13   AW17    Women's Wear    Brand 1 Top BLAZER      207

Blazer-5    AW16    Women's Wear    Brand 1 Top BLAZER  126 

Blazer-5    AW17    Women's Wear    Brand 1 Top BLAZER      200

Blazer-6    AW17    Men's Wear  Brand 1 Top BLAZER      5

Blazer-7    AW17    Women's Wear    Brand 1 Top BLAZER      299

Blazer-8    AW17    Women's Wear    Brand 1 Top BLAZER      147

Blazer-9    AW17    Men's Wear  Brand 1 Top BLAZER      23

Jacket-10   AW17    Men's Wear  Brand 1 Top JACKETS     20

Jacket-11   AW17    Men's Wear  Brand 1 Top JACKETS     5

Jacket-12   AW16    Men's Wear  Brand 1 Top JACKETS 5   

Jacket-12   AW17    Men's Wear  Brand 1 Top JACKETS     12

Jacket-13   AW16    Women's Wear    Brand 1 Top JACKETS 15

В качестве значения указан идентификатор продукта, мне нужно получить рост продаж в% как новый столбец с использованием сезона AW16, AW17 с заданными продажами AW16 (продажи ), AW17 (продажа). Проблема в том, что я не смог сгруппировать или поместить формулу, поскольку значения столбцов Sales находятся в разных строках для определенного идентификатора продукта.

Я пытался это сделать.

df_AW17['Sales Growth %'] = df_AW17.groupby(['Product ID'])(((df_AW17['AW17 (Sales)'] - df_AW17['AW16 (Sales)']) / df_AW17['AW16 (Sales)']) * 100).

и я хочу получить результат (% роста продаж) с года AW16 (продажи) до AW17 (продажи), указывающего c на идентификатор продукта.

1 Ответ

0 голосов
/ 09 апреля 2020

, поскольку кажется, что все строки в вашем фрейме данных имеют уникальные идентификаторы продуктов, не будет ли более простое последующее создание нового столбца не соответствовать цели?

df_AW17['Sales_growth_pct'] = (df_AW17['AW17 (Sales)'] - df_AW17['AW16 (Sales)']) / df_AW17['AW16 (Sales)']
...