Найти - Пользователи
Полная версия: Работа с файлом csv в pandas
Начало » Python для новичков » Работа с файлом csv в pandas
1
1234567890+342
Добрый день, меня зовут Александр! Мне нужен ваш совет.​

У меня есть файл под названием milk_promo_sales.csv. В нем три столбца:
store_id - идентификатор магазина
period_id ​ - период (неделя) наблюдения
sales_volume - объем продаж
Мне нужно найти:

1. Общее количество промопериодов (во всех магазинах)
2. Медиану продолжительности промопериода (количество недель)
3. Объем​ продаж по каждому промопериоду
4. Медиану количества промопериодов на один магазин
Я пробовал разные варианты, но ничего лучше придумать не удалось чем это:
   
import pandas as pd
import numpy as np
pd.read_csv(milk_promo_sales.csv)
df1 = df.groupby(period_id).sum()
import pandas as pd
import numpy as np
pd.read_csv(milk_promo_sales.csv)
df2 = df.groupby(period_id).median()
import pandas as pd
import numpy as np
pd.read_csv(milk_promo_sales.csv)
df3 = df.groupby(period_id, store_id, sales_volume).sort_values()
import pandas as pd
import numpy as np
pd.read_csv(milk_promo_sales.csv)
df4 = df.groupby(period_id).sum()
df5 = df.groupby(store_id).sum()
df6 = (df4/df5).median()
Возможно, решение неправильное, но я пока только начинающий питонист. Заранее спасибо за ответ
py.user.next
1234567890+342
store_id - идентификатор магазина
period_id ​ - период (неделя) наблюдения
sales_volume - объем продаж

1234567890+342
1. Общее количество промопериодов (во всех магазинах)
2. Медиану продолжительности промопериода (количество недель)
3. Объем​ продаж по каждому промопериоду
4. Медиану количества промопериодов на один магазин

1234567890+342
1. Общее количество промопериодов (во всех магазинах)
Просто посчитать количество строк в колонке period_id.

1234567890+342
2. Медиану продолжительности промопериода (количество недель)
Отсортировать все значения из колонки period_id по возрастанию и взять среднее значение в списке или полусумму двух средних значений.

1234567890+342
3. Объем​ продаж по каждому промопериоду
Для всех одинаковых значений из колонки period_id сложить значения из колонки sales_volume. Получится множество пар {(период, общая сумма продаж периода), (период, общая сумма продаж периода), … } .

1234567890+342
4. Медиану количества промопериодов на один магазин
Выбрать одинаковые значения в колонке store_id и посчитать их количество. Получится список таких количеств (3, 2, 5, … ). Затем отсортировать список количеств по возврастанию и взять среднее значение в списке или полусумму двух средних значений.

1234567890+342
Работа с файлом csv в pandas
Это и без pandas можно сделать.

1234567890+342
Возможно, решение неправильное
Для этого надо библиотеку pandas изучать. Частью питона она не является.
1234567890+342
py.user.next
Премного благодарен за помощь
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB