Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2020
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. def filter_by_genre(data, genre):
  2. result = []
  3. for row in data:
  4. genres = row[4]
  5. if genre in genres:
  6. result.append(row)
  7. return result
  8.  
  9.  
  10. def column_sum(data, column):
  11. result = 0
  12. for row in data:
  13. result += row[column]
  14. return result
  15.  
  16.  
  17. def column_mean(data, column):
  18. total = column_sum(data, column)
  19. mean = total / len(data)
  20. return mean
  21.  
  22.  
  23. def add_roi(data):
  24. for i in range(len(data)):
  25. budget = data[i][5]
  26. gross = data[i][6]
  27. roi = (gross - budget) / budget
  28. data[i].append(roi)
  29.  
  30.  
  31. def add_price_per_minute(data):
  32. for i in range(len(data)):
  33. length = data[i][3]
  34. budget = data[i][5]
  35. price_per_minute = budget / length
  36. data[i].append(price_per_minute)
  37.  
  38.  
  39. selected_genres = ["история", "мелодрама", "криминал", "биография", "триллер"]
  40.  
  41. add_roi(oscar_data)
  42. add_price_per_minute(oscar_data)
  43.  
  44. genres_means = []
  45. for genre in selected_genres:
  46. filt_data = filter_by_genre(oscar_data, genre)
  47. mean_score = column_mean(filt_data, 2)
  48. mean_length = column_mean(filt_data, 3)
  49. mean_roi = column_mean(filt_data, 7)
  50. mean_ppm = column_mean(filt_data, 8)
  51. genres_means.append([genre, mean_score, mean_length, mean_roi, mean_ppm])
  52.  
  53. print("Жанр | Рейтинг | Длина | ROI | Бюджет за минуту")
  54. print("-------------------------------------------------------")
  55. for row in genres_means:
  56. print("{: <9} | {: >7.2f} | {: >5.2f} | {: >5.2f} | {: >16.2f}".format(
  57. row[0], row[1], row[2], row[3], row[4]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement