Untitled

From volodymyr kan, 1 Year ago, written in Python, viewed 196 times.
URL http://codebin.org/view/1b605aef Embed
Download Paste or View Raw
  1. #https://practicum.yandex.ru/trainer/data-analyst/lesson/ab9150ea-5de0-4e62-bc57-#8fe50a78e9b0/task/cc89b1a9-865a-476f-966a-567881a3e209/
  2.  
  3. # Объявление функции genre_weekday() с параметрами table, day, time1, time2,
  4. # которая возвращает информацию о самых популярных жанрах в указанный день в
  5. # заданное время:
  6. # 1) в переменную genre_df сохраняются те строки переданного датафрейма table, для
  7. #    которых одновременно:
  8. #    - значение в столбце day равно значению аргумента day
  9. #    - значение в столбце time больше значения аргумента time1
  10. #    - значение в столбце time меньше значения аргумента time2
  11. #    Используйте последовательную фильтрацию с помощью логической индексации.
  12. # 2) сгруппировать датафрейм genre_df по столбцу genre, взять один из его
  13. #    столбцов и посчитать методом count() количество записей для каждого из
  14. #    присутствующих жанров, получившийся Series записать в переменную
  15. #    genre_df_grouped
  16. # 3) отсортировать genre_df_grouped по убыванию встречаемости и сохранить
  17. #    в переменную genre_df_sorted
  18. # 4) вернуть Series из 10 первых значений genre_df_sorted, это будут топ-10
  19. #    популярных жанров (в указанный день, в заданное время)
  20.  
  21. def genre_weekday(table, day, time1, time2):
  22.     # последовательная фильтрация
  23.     # оставляем в genre_df только те строки df, у которых день равен day
  24.     genre_df = table[table['day'] == day] # ваш код здесь
  25.    
  26.     # оставляем в genre_df только те строки genre_df, у которых время меньше time2
  27.     genre_df = genre_df[genre_df['time'] < time2]   # ваш код здесь
  28.     # оставляем в genre_df только те строки genre_df, у которых время больше time1
  29.     genre_df = genre_df[genre_df['time'] > time1]  # ваш код здесь
  30.     # сгруппируем отфильтрованный датафрейм по столбцу с названиями жанров, возьмём столбец genre и посчитаем кол-во строк для каждого жанра методом count()
  31.     genre_df_grouped = genre_df.groupby('genre').count()# ваш код здесь
  32.     # отсортируем результат по убыванию (чтобы в начале Series оказались самые популярные жанры)
  33.     genre_df_sorted = genre_df_grouped.sort_values(ascending = False) # ваш код здесь
  34.     # вернём Series с 10 самыми популярными жанрами в указанный отрезок времени заданного дня
  35.     return genre_df_sorted[:10]
  36.  
  37. print (genre_weekday(moscow_general, 'Monday', '07:00', '11:00'))

Replies to Untitled rss

Title Name Language When
Re: Untitled volodymyr kan python 1 Year ago.

Reply to "Untitled"

Here you can reply to the paste above