Решить проблему можно, сложив площади посевов (Acres), а также объёмы урожая (Production) по всем штатам за каждый год. Однако сделать это непросто.
Начните с задачи полегче: найдите общую площадь посевов только для 1980 года. На первом этапе сохраните значения Acres для каждого штата в списке acres_one_year и выведите его на экран. Выбранный год сохранён в переменной year.
import pandas
data = pandas.read _csv('crops_usa.csv')
acres = list(data['Acres'])
years = list(data['Year'])
year = 1980
# ваш код здесь
print(acres_one_year)
Создайте переменную acres_one_year и сохраните в ней пустой список. Затем отфильтруйте список acres — напишите цикл for с перебором по индексам, в теле которого задайте условие: если значение в списке years совпадает со значением переменной year, добавить соответствующее значение из acres в список acres_one_year.
должно быть просто, но в голову не идёт...
помогите) спасибо
Python
Питон для начинающих)
import pandas
data = pandas.read _csv('crops_usa.csv')
acres = list(data['Acres'])
years = list(data['Year'])
year = 1980
acres_one_year = []
for index in range(len(acres)):
if years[index]==year:
acres_one_year.append(acres[index])
# ваш код здесь
print(acres_one_year)
data = pandas.read _csv('crops_usa.csv')
acres = list(data['Acres'])
years = list(data['Year'])
year = 1980
acres_one_year = []
for index in range(len(acres)):
if years[index]==year:
acres_one_year.append(acres[index])
# ваш код здесь
print(acres_one_year)
Радик Сафин
спасибо Никита)
Радик Сафин
я его сам решил с трезвой головой......капец...)))
Pandas это не для начинающих. Это для уже прошаренных в основах
Радик Сафин
вы знаете, я ещё даже учиться не начал...типо это предварительные курсы....
Никита, добрый день.
Подскажите, пожалуйста, как Вы решили эту задачу?
Основы Python и анализа данных-Тема 7. Урок 10:
Модули ошибок есть — теперь можно считать среднее. Разделите сумму всех значений списка error_abs_acres на его длину и выведите результат на экран.
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_acres = [] # ошибки первой модели, предсказана площадь посевов
for index in range(1, len(production_usa)):
error_acres.append(production_usa[index] - acres_usa[index] * yield_usa[index - 1])
error_yield = [] # ошибки второй модели, предсказана урожайность
for index in range(1, len(production_usa)):
error_yield.append(production_usa[index] - acres_usa[index - 1] * yield_usa[index])
error_abs_acres = [] # модули ошибок первой модели
for value in error_acres:
error_abs_acres.append(abs(value))
# ваш код здесь
В подсказке написано: В скобках функции print() вызовите функции sum() и len().
Подскажите, пожалуйста, как Вы решили эту задачу?
Основы Python и анализа данных-Тема 7. Урок 10:
Модули ошибок есть — теперь можно считать среднее. Разделите сумму всех значений списка error_abs_acres на его длину и выведите результат на экран.
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_acres = [] # ошибки первой модели, предсказана площадь посевов
for index in range(1, len(production_usa)):
error_acres.append(production_usa[index] - acres_usa[index] * yield_usa[index - 1])
error_yield = [] # ошибки второй модели, предсказана урожайность
for index in range(1, len(production_usa)):
error_yield.append(production_usa[index] - acres_usa[index - 1] * yield_usa[index])
error_abs_acres = [] # модули ошибок первой модели
for value in error_acres:
error_abs_acres.append(abs(value))
# ваш код здесь
В подсказке написано: В скобках функции print() вызовите функции sum() и len().
Радик Сафин
здрасти) это тема - машинное обучение?
Ахмед Ахмедов
Да, машинное обучение)
Константин Суворов
print(sum(error_abs_acres) / len(error_abs_acres))
Похожие вопросы
- Задача по питону для начинающих
- Что за зверь Питон.
- Питон во всем такой медленный? (сравнивал с JavaScript)
- Вы согласны с мнением, что питон хуже других языков программирования?
- Питон на сириусе. Кинотеатр
- Решить две задачи на питоне. Помогите пожалуйста
- Как сделать так чтобы питон воспринимал число 13, не как 1 и 3?
- Помогите написать антивирус на питоне.
- Как с помощью питона изменить настройки в роутере
- Алгоритмы на Питоне? Не смешите, даже самый отстойный алгоритм на C++ будет быстрее работать более экономного на Питоне.