Wolfram 语言

概率和统计中的量

全球核反应堆

NuclearReactorData 提供了世界上已知核反应堆的数据. 有些已被关闭,比如切尔诺贝利核反应堆. 可以选取当前正在运行的核反应堆来分析核能资源的情况.

In[1]:=
Click for copyable input
reactors = NuclearReactorData[];
In[2]:=
Click for copyable input
active = Keys@ Select[EntityValue["NuclearReactor", "Status", "EntityAssociation"], # === "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 语言输入
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 语言输入
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 ru