pandas — использование фрейма данных для нахождения среднего значения путем удаления дубликатов

#python #pandas #pandas-groupby #mean

#python #pandas #pandas-groupby #среднее значение

Вопрос:

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

 Product ID  SN           Age    Gender  Item ID Item Name           Price
0   0   Lisim78       20    Male    108     Extraction,         3.53
1   1   Lisovynya38   40    Male    143     Frenzied Scimitar   1.56
2   2   Ithergue48    24    Male    92      Final Critic        4.88
3   3   Chamassasya86 24    Male    100     Blindscythe         3.27
4   4   Iskosia90     23    Male    131     Fury                1.44 
  

Очевидно, что существует ряд товаров для продажи, которые продаются несколько раз. Я пытаюсь получить среднее значение цены продажи. Вот код, который я создал

 average_price = purchase_data_df.groupby('Item ID')[["Price"]].mean()
print(average_price)
  

Но, похоже, это дает только среднее значение для каждого идентификатора элемента. Как мне закодировать, чтобы получить общее среднее значение?

Комментарии:

1. просто удалите groupby: average_price = purchase_data_df[["Price"]].mean()

2. К сожалению, у меня есть элементы, которые появляются несколько раз в данных о продажах. Простое удаление groupby даст мне среднее значение для тех товаров, которые были проданы несколько раз, добавило вес к вычислению. т.е. Если товар A был продан 3 раза, товар B продан дважды, а товар C — один раз, это будет вычислять (3A 2B C) / 6 вместо (A B C) / 3 не так ли?

3. df[['Item Name', 'Price']].drop_duplicates().mean()

4. Идеально! Спасибо!