Язык Wolfram Language

Количественные характеристики в теории вероятности и статистике

Ядерные реакторы в современном мире

NuclearReactorData предоставляет данные об известных ядерных реакторах по всему миру. Некоторые из них, например Чернобыль, уже закрыты. Выберем реакторы, функционирующие в настоящее время, для анализа ядерных энергетических ресурсов.

In[1]:=
Click for copyable input
reactors = NuclearReactorData[];
In[2]:=
Click for copyable input
active = Select[reactors, #["Status"] == "operational" &];

Извлечем информацию о годовом объеме производства энергии для отдельных стран.

In[3]:=
Click for copyable input
annualproduction = NuclearReactorData[active, "AnnualEnergyProduction"]; countries = Map[First, NuclearReactorData[active, "Countries"]];

Создадим базу данных и удалим пропущенные значения. В современном мире свыше 400 работающих ядерных реакторов.

In[4]:=
Click for copyable input
data = Transpose[{active, countries, annualproduction}]; data = DeleteMissing[data, 1, 2];
In[5]:=
Click for copyable input
data // Dimensions
Out[5]=

Рассчитаем количество ядерных реакторов на страну.

In[6]:=
Click for copyable input
percountry = GroupBy[data, #1[[2]] &];
In[7]:=
Click for copyable input
numberpercountry = Map[Length, percountry];
In[8]:=
Click for copyable input
BarChart[Sort[numberpercountry], ChartLabels -> Automatic, ChartStyle -> "DarkRainbow", BarOrigin -> Left, BarSpacing -> 1, LabelingFunction -> (Placed[#1, After] &), ImageSize -> Large]
Out[8]=

Число реакторов соответствует общему объёму ядерной энергии, производимой в данной стране.

In[9]:=
Click for copyable input
energytotals = Map[Total[#[[All, 3]]] &, percountry];
In[10]:=
Click for copyable input
stats = {Min, Max, Mean, Median, Total}; TableForm[#[energytotals] & /@ stats, TableHeadings -> {stats}]
Out[10]//TableForm=

Крупнейшими производителями атомной энергии являются Соединенные Штаты и Франция.

In[11]:=
Click for copyable input
TakeLargest[energytotals, 2]
Out[11]=
код на языке Wolfram Language целиком
In[12]:=
Click for copyable input
GeoRegionValuePlot[energytotals, GeoProjection -> "Mercator", GeoRange -> {{-70, 80}, {-170, 190}}, GeoLabels -> (Tooltip[#1, #2] &)]
Out[12]=

Ситуация меняется, если учесть общий объем производства энергии на душу населения. Функция CountryData сообщает размер населения для каждой страны в списке.

In[13]:=
Click for copyable input
populations = AssociationThread[Keys[energytotals], CountryData[#, "Population"] & /@ Keys[energytotals]];

Рассчитаем потребление ядерной энергии на душу населения.

In[14]:=
Click for copyable input
energypercapita = energytotals/populations;
In[15]:=
Click for copyable input
TableForm[#[energypercapita] & /@ stats, TableHeadings -> {stats}]
Out[15]//TableForm=

Полученная карта показывает, что даже при том, что США имеет самое крупное производство ядерной энергии в мире, Франция и Швеция лидируют по потреблению ядерной энергии на душу населения.

In[16]:=
Click for copyable input
TakeLargest[energypercapita, 2]
Out[16]=
код на языке Wolfram Language целиком
In[17]:=
Click for copyable input
GeoRegionValuePlot[energypercapita, GeoProjection -> "Mercator", GeoRange -> {{-70, 80}, {-170, 190}}, GeoLabels -> (Tooltip[#1, #2] &)]
Out[17]=

Родственные примеры

de en es fr ja ko pt-br zh