-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathworkout.py
More file actions
141 lines (113 loc) · 6.33 KB
/
Copy pathworkout.py
File metadata and controls
141 lines (113 loc) · 6.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
import pandas, numpy as np, matplotlib.pyplot as plt, seaborn, sklearn
#Question 2, finding trends for all energy sources in the UK
coal_df = pandas.read_csv('hard coal.csv')
naturalgas_df = pandas.read_csv('natural gas.csv')
solar_df = pandas.read_csv('solar.csv')
wind_df = pandas.read_csv('wind.csv')
nuclear_df = pandas.read_csv('nuclear.csv')
hydro_df = pandas.read_csv('hydro.csv')
#creating dataframes for just the UK, just focused on production category for fossil fuel graphs
ukcoal_df = coal_df[(coal_df['Country or Area'] == 'United Kingdom') & (coal_df['Commodity - Transaction'] == 'Hard coal - production')]
ukcoal_df = coal_df[(coal_df['Country or Area'] == 'United Kingdom') & (coal_df['Commodity - Transaction'] == 'Hard coal - final consumption')]
uknaturalgas_df = naturalgas_df[(naturalgas_df['Country or Area'] == 'United Kingdom') & (naturalgas_df['Commodity - Transaction'] == 'Natural gas (including LNG) - production')]
uksolar_df = solar_df[solar_df['Country or Area'] == 'United Kingdom']
ukwind_df = wind_df[wind_df['Country or Area'] == 'United Kingdom']
uknuclear_df = nuclear_df[nuclear_df['Country or Area'] == 'United Kingdom']
ukhydro_df = hydro_df[hydro_df['Country or Area'] == 'United Kingdom']
#stacked histograms
fig, axes = plt.subplots(2, 3)
#UK Hard Coal - Production Histogram
numbins = np.histogram_bin_edges(ukcoal_df['Quantity'], bins='auto')
ukcoal_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[0,0])
axes[0,0].set_title('UK Hard Coal - Production Histogram')
axes[0,0].set_xlabel('Quantity in Metric Tons')
axes[0,0].set_ylabel('Frequency')
print("UK Hard Coal Production Stats:")
print(ukcoal_df['Quantity'].describe()) # Display statistics for UK Hard Coal production
#UK Natural gas (including LNG) - production Histogram
numbins = np.histogram_bin_edges(uknaturalgas_df['Quantity'], bins='auto')
uknaturalgas_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[0,1])
axes[0,1].set_title('UK Natural Gas - Production Histogram')
axes[0,1].set_xlabel('Quantity in Terajoules')
axes[0,1].set_ylabel('Frequency')
print("UK Natural Production Gas Stats:")
print(uknaturalgas_df['Quantity'].describe()) # Display statistics for UK Natural Gas production
#UK Solar - Production Histogram
numbins = np.histogram_bin_edges(uksolar_df['Quantity'], bins='auto')
uksolar_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[0,2])
axes[0,2].set_title('UK Solar - Production Histogram')
axes[0,2].set_xlabel('Quantity in Kilowatt-hours (millions)')
axes[0,2].set_ylabel('Frequency')
print("UK Solar Production Stats:")
print(uksolar_df['Quantity'].describe()) # Display statistics for UK Solar production
#UK Wind - Production Histogram
numbins = np.histogram_bin_edges(ukwind_df['Quantity'], bins='auto')
ukwind_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[1,0])
axes[1,0].set_title('UK Wind - Production Histogram')
axes[1,0].set_xlabel('Quantity in Kilowatt-hours (millions)')
axes[1,0].set_ylabel('Frequency')
print("UK Wind Production Stats:")
print(ukwind_df['Quantity'].describe()) # Display statistics for UK Wind production
#UK Nuclear - Production Histogram
numbins = np.histogram_bin_edges(uknuclear_df['Quantity'], bins='auto')
uknuclear_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[1,1])
axes[1,1].set_title('UK Nuclear - Production Histogram')
axes[1,1].set_xlabel('Quantity in Kilowatt-hours (millions)')
axes[1,1].set_ylabel('Frequency')
print("UK Nuclear Production Stats:")
print(uknuclear_df['Quantity'].describe()) # Display statistics for UK Nuclear production
#UK Hydro - Production Histogram
numbins = np.histogram_bin_edges(ukhydro_df['Quantity'], bins='auto')
ukhydro_df['Quantity'].hist(bins=numbins, edgecolor='black', ax=axes[1,2])
axes[1,2].set_title('UK Hydro - Production Histogram')
axes[1,2].set_xlabel('Quantity in Kilowatt-hours (millions)')
axes[1,2].set_ylabel('Frequency')
print("UK Hydro Production Stats:")
print(ukhydro_df['Quantity'].describe()) # Display statistics for UK Hydro production
plt.tight_layout()
plt.show()
#line graphs over the years for each energy source in the UK
fig, axes = plt.subplots(2, 3)
#UK Hard Coal - Production Line Graph
ukcoal_df.plot(x='Year', y='Quantity', kind='line', ax=axes[0,0], color='blue')
axes[0,0].set_title('UK Hard Coal - Production Line Graph')
axes[0,0].set_xlabel('Year')
axes[0,0].set_ylabel('Quantity in Metric Tons')
#UK Natural gas (including LNG) - production Line Graph
uknaturalgas_df.plot(x='Year', y='Quantity', kind='line', ax=axes[0,1], color='orange')
axes[0,1].set_title('UK Natural Gas - Production Line Graph')
axes[0,1].set_xlabel('Year')
axes[0,1].set_ylabel('Quantity in Terajoules')
#UK Solar - Production Line Graph
uksolar_df.plot(x='Year', y='Quantity', kind='line', ax=axes[0,2], color='yellow')
axes[0,2].set_title('UK Solar - Production Line Graph')
axes[0,2].set_xlabel('Year')
axes[0,2].set_ylabel('Quantity in Kilowatt-hours (millions)')
#UK Wind - Production Line Graph
ukwind_df.plot(x='Year', y='Quantity', kind='line', ax=axes[1,0], color='green')
axes[1,0].set_title('UK Wind - Production Line Graph')
axes[1,0].set_xlabel('Year')
axes[1,0].set_ylabel('Quantity in Kilowatt-hours (millions)')
#UK Nuclear - Production Line Graph
uknuclear_df.plot(x='Year', y='Quantity', kind='line', ax=axes[1,1], color='purple')
axes[1,1].set_title('UK Nuclear - Production Line Graph')
axes[1,1].set_xlabel('Year')
axes[1,1].set_ylabel('Quantity in Kilowatt-hours (millions)')
#UK Hydro - Production Line Graph
ukhydro_df.plot(x='Year', y='Quantity', kind='line', ax=axes[1,2],)
axes[1,2].set_title('UK Hydro - Production Line Graph')
axes[1,2].set_xlabel('Year')
axes[1,2].set_ylabel('Quantity in Kilowatt-hours (millions)')
plt.tight_layout()
plt.show()
"""
#count of Commodity - Transaction for all energy sources in the UK
print(ukcoal_df['Commodity - Transaction'].value_counts())
print(uknaturalgas_df['Commodity - Transaction'].value_counts())
print(uksolar_df['Commodity - Transaction'].value_counts())
print(ukwind_df['Commodity - Transaction'].value_counts())
print(uknuclear_df['Commodity - Transaction'].value_counts())
print(ukhydro_df['Commodity - Transaction'].value_counts())
#print(ukcoal_df.groupby('Commodity - Transaction').sum('Quantity'))
#print(ukcoal_df.describe())
"""