Процент увеличения с PandasPython

Программы на Python
Ответить
Anonymous
 Процент увеличения с Pandas

Сообщение Anonymous »

У меня есть DataFrame pandas, содержащий выбросы парниковых газов (CO2, CH4, N2O) в сельскохозяйственном секторе с годовыми значениями с 1961 по 2023 год. Для каждого газа я хотел бы вычислить процентное изменение выбросов относительно первого доступного года (1961), чтобы значение в 2023 году представляло собой общий процентный прирост с 1961 года.
Пример:
/>percentage_change = (value_year - value_1961) / value_1961 * 100
В DataFrame есть следующие соответствующие столбцы:
  • Элемент (тип газа: CO2, CH4, N2O)
  • Год
  • Значение (выбросы)
Как правильно вычислить это в pandas, сгруппировать по типу газа и сохранить результат в новом столбце?
import pandas as pd

data = [
["Emissions totals","N2O",5064,"Crop Residues",1961,3050,"FAO TIER 1","kt",270.9776,"E","Estimated value"],
["Emissions totals","N2O",5064,"Crop Residues",1962,3050,"FAO TIER 1","kt",283.4310,"E","Estimated value"],
["Emissions totals","N2O",5064,"Crop Residues",1963,3050,"FAO TIER 1","kt",285.8369,"E","Estimated value"],
["Emissions totals","N2O",5064,"Crop Residues",1964,3050,"FAO TIER 1","kt",299.6614,"E","Estimated value"],
["Emissions totals","N2O",5064,"Crop Residues",1965,3050,"FAO TIER 1","kt",298.0498,"E","Estimated value"],
["Emissions totals","N2O",6506,"Food Packaging",2022,3050,"FAO TIER 1","kt",1.8491,"E","Estimated value"],
["Emissions totals","CO2",6506,"Food Packaging",2022,3050,"FAO TIER 1","kt",213847.7055,"E","Estimated value"],
["Emissions totals","CH4",6506,"Food Packaging",2023,3050,"FAO TIER 1","kt",150.7888,"E","Estimated value"],
["Emissions totals","N2O",6506,"Food Packaging",2023,3050,"FAO TIER 1","kt",1.8452,"E","Estimated value"],
["Emissions totals","CO2",6506,"Food Packaging",2023,3050,"FAO TIER 1","kt",212608.6931,"E","Estimated value"],
]

columns = [
"Domain","Element","Item Code","Item","Year",
"Source Code","Source","Unit","Value","Flag","Flag Description"
]

df = pd.DataFrame(data, columns=columns)


Подробнее здесь: https://stackoverflow.com/questions/798 ... ith-pandas
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»