Shaheed Zulfikar Ali Bhutto Institute of Science & Technology
Shaheed Zulfikar Ali Bhutto Institute of Science & Technology
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________
_____________________________________________________________________________________________________________________________________________________________________________________________________________________________
PYTHON CODE
import pandas as pd
import numpy as np
import folium
import imageio
import imageio
import mapclassify as mc
import statsmodels.api as sm
import scipy
plt.style.use('ggplot')
plt.rcParams['font.family'] = 'sans-serif'
plt.rcParams['font.serif'] = 'Ubuntu'
plt.rcParams['font.size'] = 14
plt.rcParams['axes.labelsize'] = 12
plt.rcParams['axes.labelweight'] = 'bold'
plt.rcParams['axes.titlesize'] = 12
plt.rcParams['xtick.labelsize'] = 12
plt.rcParams['ytick.labelsize'] = 12
plt.rcParams['legend.fontsize'] = 12
plt.rcParams['figure.titlesize'] = 12
plt.rcParams['image.cmap'] = 'jet'
plt.rcParams['image.interpolation'] = 'none'
plt.rcParams['axes.grid']=True
plt.rcParams['lines.linewidth'] = 2
plt.rcParams['lines.markersize'] = 8
colors = ['xkcd:pale orange', 'xkcd:sea blue', 'xkcd:pale red', 'xkcd:sage green', 'xkcd:terra cotta',
'xkcd:dull purple', 'xkcd:teal', 'xkcd: goldenrod', 'xkcd:cadet blue',
'xkcd:scarlet']
data = pd.read_csv('GlobalLandTemperaturesByMajorCity.csv')
data = pd.read_csv('GlobalLandTemperaturesByMajorCity.csv')
city_data.head()
LAT = []
LONG = []
locator = Nominatim(user_agent="myGeocoder")
location = locator.geocode(city)
LAT.append(location.latitude)
LONG.append(location.longitude)
world_map= folium.Map()
geolocator = Nominatim(user_agent="Piero")
marker_cluster = MarkerCluster().add_to(world_map)
for i in range(len(city_data)):
lat = city_data.iloc[i]['Latitude']
long = city_data.iloc[i]['Longitude']
radius=5
explodes = (0,0.3)
plt.pie(data[data['City']=='Chicago'].AverageTemperature.isna().value_counts(),explode=explodes,
startangle=0,colors=['firebrick','indianred'],
chicago_data = data[data['City']=='Chicago']
chicago_data['AverageTemperature']=chicago_data.AverageTemperature.fillna(method='bfill')
chicago_data['AverageTemperatureUncertainty']=chicago_data.AverageTemperatureUncertainty.
fillna(method='bfill')
chicago_data = chicago_data.reset_index()
chicago_data = chicago_data.drop(columns=['index'])
chicago_data.dt = pd.to_datetime(chicago_data.dt)
YEAR = []
MONTH = []
DAY = []
WEEKDAY = []
for i in range(len(chicago_data)):
WEEKDAY.append(chicago_data.dt[i].weekday())
DAY.append(chicago_data.dt[i].day)
MONTH.append(chicago_data.dt[i].month)
YEAR.append(chicago_data.dt[i].year)
chicago_data['Year'] = YEAR
chicago_data['Month'] = MONTH
chicago_data['Day'] = DAY
chicago_data['Weekday'] = WEEKDAY
change_year_index = []
change_year = []
year_list = chicago_data['Year'].tolist()
for y in range(0,len(year_list)-1):
if year_list[y]!=year_list[y+1]:
change_year.append(year_list[y+1])
change_year_index.append(y+1)
chicago_data.loc[change_year_index].head()
x_ticks_year_list=np.linspace(min(year_list),max(year_list),10).astype(int)
change_year_index = np.array(change_year_index)
x_ticks_year_index = []
for i in range(1,len(x_ticks_year_list)):
x_ticks_year_index.append(change_year_index[np.where(np.array(change_year)==x_ticks_year_li
st[i])][0])
sns.scatterplot(x=chicago_data.index,y=chicago_data.AverageTemperature,s=25,color='firebrick')
plt.xticks(x_ticks_year_index,x_ticks_year_list)
plt.xlabel('Year')
plt.ylabel('Average Temperature')
plt.figure(figsize=(20,20))
plt.suptitle('Plotting 4 decades',fontsize=40,color='firebrick')
plt.subplot(2,2,1)
plot_timeseries(1800,1810)
plt.subplot(2,2,2)
plot_timeseries(1900,1910)
plt.subplot(2,2,3)
plot_timeseries(1900,1910)
plt.subplot(2,2,4)
plot_timeseries(1900,1910)
plt.tight_layout()
fig = plt.figure(figsize=(12,8))
ax1 = fig.add_subplot(211)
ax2 = fig.add_subplot(212)
result = adfuller(chicago_data.AverageTemperature)
print('p-value: {}'.format(result[1]))
print('Critical Values:')
result = adfuller(chicago_data.AverageTemperature[0:120])
print('p-value: {}'.format(result[1]))
print('Critical Values:')
plot_timeseries(1992,2013)
plot_timeseries(1992,2013)
temp = get_timeseries(1992,2013)
N = len(temp.AverageTemperature)
split = 0.95
training_size = round(split*N)
test_size = round((1-split)*N)
series = temp.AverageTemperature[:training_size]
date = temp.dt[:training_size]
test_series = temp.AverageTemperature[len(date)-1:len(temp)]
test_date = temp.dt[len(date)-1:len(temp)]
#test_date = test_date.reset_index().dt
#test_series = test_series.reset_index().AverageTemperature
plot_from_data(series,date,label='Training Set')
plot_from_data(test_series,test_date,'navy',with_ticks=False,label='Test Set')
plt.legend()
"""
"""
results = []
#try:
#except:
# continue
aic = model.aic
results.append([order, model.aic])
#print(results)
result_df = pd.DataFrame(results)
ps = range(0, 10, 1)
d=0
qs = range(0, 10, 1)
parameters_list = list(parameters)
order_list = []
each = list(each)
each.insert(1, d)
each = tuple(each)
order_list.append(each)
result_d_1.head()
final_result = result_d_0.append(result_d_1)
best_model_params_0 = best_models[best_models.columns[0]][0]
best_model_params_1 = best_models[best_models.columns[0]][1]
print(best_model_0.summary())
print(best_model_1.summary())
#plt.plot(forec)
plt.figure(figsize=(12,12))
plt.subplot(2,1,1)
plt.plot(test_set,marker='.',label="Actual",color='navy')
plt.plot(forec,marker='d',label="Forecast",color='firebrick')
plt.xlabel('Index Datapoint')
plt.ylabel('Temperature')
plt.legend()
plt.subplot(2,1,2)
plt.plot(test_set,marker='.',label="Actual",color='navy')
plt.plot(s_forec,marker='d',label="Forecast",color='firebrick')
plt.legend()
plt.xlabel('Index Datapoint')
plt.ylabel('Temperature')
plot_from_data(test_set,test_date,c='navy',label='Actual')
plot_from_data(forec['f'],test_date,c='firebrick',label='Forecast')
plt.legend(loc=2)