Этот код работает, но программа не принимает ответ, подскажите что я пропустил?
При проверке выдает:
Не правильное значение переменной error_yield
Item 0:
2549811575.1209617
^
1. Вычислите ошибки предсказаний для первой стратегии — площадь посевов реальная, а урожайность прошлогодняя.
Создайте список error_acres и добавьте в него разницу реального и предсказанного объёма урожая за каждый год, кроме 1980-го. Чтобы не запутаться с индексами, не создавайте отдельный список для предсказаний, как в предыдущем уроке. Вместо этого сразу вычитайте произведение реальной площади посевов и прошлогодней урожайности из реального объёма урожая за определённый год.
Затем постройте столбчатую диаграмму, на которой по оси X отмечены года, начиная с 1981-го, а по оси Y — значения error_acres.
2. Проделайте то же самое для второй стратегии — площадь посевов прошлогодняя, а урожайность настоящая. Результаты сохраните в списке error_yield. Затем постройте столбчатую диаграмму, на которой по оси X отмечены года, начиная с 1981-го, а по оси Y — значения error_yield.
Первая задача была решена без проблем.
Буду признателен, кто направит к решению задачи. Спасибо!
import pandas
data = pandas.read_csv('crops_usa.csv')
acres = list(data['Acres'])
production = list(data['Production'])
years = list(data['Year'])
acres_usa = []
production_usa = []
for year in range(1980, 2020):
acres_one_year = []
production_one_year = []
for index in range(len(data)):
if years[index] == year:
acres_one_year.append(acres[index])
production_one_year.append(production[index])
acres_usa.append(sum(acres_one_year))
production_usa.append(sum(production_one_year))
yield_usa = []
for index in range(len(production_usa)):
yield_usa.append(production_usa[index] / acres_usa[index])
years_numbers = list(range(1980, 2020))
error_yield = []
for index in range(1, len(production_usa)):
error_yield.append(acres_usa[index - 1] * yield_usa[index])
import seaborn
seaborn.barplot(x = years_numbers[1:], y = error_yield)