Advertisement
Guest User

Untitled

a guest
Nov 20th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.74 KB | None | 0 0
  1. def filter_by_year(data, begin, end):
  2. result = []
  3. for row in data:
  4. year = row[1]
  5. if begin <= year < end:
  6. result.append(row)
  7. return result
  8.  
  9. def column_sum(data, column):
  10. result = 0
  11. for row in data:
  12. result += row[column]
  13. return result
  14.  
  15. def column_mean(data, column):
  16. total = column_sum(data, column)
  17. mean = total / len(data)
  18. return mean
  19.  
  20. def add_price_per_minute(data):
  21. for i in range(len(data)):
  22. length = data[i][3]
  23. budget = data[i][5]
  24. price_per_minute = budget / length
  25. data[i].append(price_per_minute)
  26.  
  27. add_price_per_minute(oscar_data)
  28.  
  29. years = [[1988, 1998], [1998, 2008], [2008, 2018]]
  30.  
  31. rows = []
  32. for begin_end in years:
  33. # извлекаем начало и конец промежутка
  34. begin = begin_end[0]
  35. end = begin_end[1]
  36. # создаем текстовую запись промежутка
  37. name = '{}-{}'.format(begin, end)
  38.  
  39. # отфильтруйте таблицу по промежутку
  40. # < напишите код здесь >
  41. filtered_data = filter_by_year(oscar_data, begin, end)
  42. mean_score = column_mean(filtered_data, 2)
  43. mean_length = column_mean(filtered_data, 3)
  44. mean_ppm = column_mean(filtered_data, 7)
  45. mean_gross = column_mean(filtered_data, 6)
  46. rows.append([name, mean_score, mean_length, mean_ppm, mean_gross])
  47.  
  48.  
  49. print('Годы | Рейтинг | Длина | Бюджет за минуту | Сборы ')
  50. print('--------------------------------------------------------')
  51. for row in rows:
  52. print('{: <9} | {: >7.2f} | {: >5.2f} | {: >16.2f} | {: >6.2f}'.format(
  53. row[0], row[1], row[2], row[3], row[4]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement