{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Manipulating Time-series\n",
"\n",
"Time-series are a key element when assessing solar resource data. In this section, we present several examples to learn how to deal with different formats in the data and few common tasks to prepare our time-series for later analysis, such as down and up-sampling data when we need different temporal resolution than that initially available or interpolating missing values in the data. \n",
"\n",
"The dataset used in the examples of this section is a customized dataset using solar radiation measurements from the Measurement and Instrumentation Data Center (MIDC) of the U.S. National Renewable Energy Laboratory (NREL). The station selected is located at the University of Nevada - Las Vegas (UNLV) and the data used are 1-minute GHI, DHI and DNI measurements for the year 2020 {cite}`stoffel_university_2006`.\n",
"\n",
"In this section, we cover:\n",
"- [1 Time-series handling](#Time-series-handling)\n",
"- [2 Down and up-sampling time-series data](#Down-and-up-sampling-time-series-data)\n",
"- [3 Interpolating time-series data](#Interpolating-time-series-data)\n",
"- [4 Visualizing time-series data](#visualizing-time-series-data)\n",
"\n",
"***\n",
"
Content by Javier Lopez Lorente
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 1 Time-series handling\n",
"Datasets often come in different formats depending on the source. Those formats sometimes cannot be used straightaway to build a time-series and may require additional processing steps before building the time-series. For example: \n",
"- **What if date and time are in different columns?** \n",
"- **What if the year, month, day and time are in separate columns?** \n",
"- **How to the define the timestamp format for a particular dataset?** \n",
"- **How to deal with timestamp issues, local vs. universal (UTC) time?**\n",
"\n",
"This subsection presents several examples to deal with different formats in which time-series data could come and shows how to build a time-series or *datetime series*, as known in Python, for later analysis. The processing steps to build time-series are based on [pandas library](https://pandas.pydata.org/).\n",
"\n",
"Let's get started!"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# Importing the needed libraries\n",
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"import pvlib"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.1 Build our customized dataset\n",
"In order to build the customized dataset for this section, we make use of the I/O tools of the Python library *pvlib* to retrieve the data from the UNLV station in the MIDC. Data from other stations from the MIDC can be also retrieved using this method by adapting the station ID in the query. The different station IDs are available in the [MIDC raw data page](https://midcdmz.nrel.gov/apps/data_api_doc.pl?_idtextlist)."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Unnamed: 0
\n",
"
year
\n",
"
DOY
\n",
"
PST
\n",
"
dni
\n",
"
ghi
\n",
"
Global UVA [W/m^2]
\n",
"
Global UVE [W/m^2]
\n",
"
Global UVE [Index]
\n",
"
Dry Bulb Temp [deg C]
\n",
"
...
\n",
"
Avg Wind Direction @ 30ft [deg from N]
\n",
"
Peak Wind Speed @ 30ft [m/s]
\n",
"
UVSAET Temp [deg C]
\n",
"
Logger Temp [deg C]
\n",
"
Logger Battery [VDC]
\n",
"
Wind Chill Temp [deg C]
\n",
"
dhi
\n",
"
Zenith Angle [degrees]
\n",
"
Azimuth Angle [degrees]
\n",
"
Airmass
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
0
\n",
"
2020
\n",
"
1
\n",
"
0
\n",
"
-1.67051
\n",
"
-2.53035
\n",
"
-0.005
\n",
"
0.0
\n",
"
0.002
\n",
"
6.004
\n",
"
...
\n",
"
17.67
\n",
"
0.098
\n",
"
24.9
\n",
"
22.25
\n",
"
13.28
\n",
"
6.004
\n",
"
0.0
\n",
"
166.494
\n",
"
16.4003
\n",
"
-7999.0
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
-1.64962
\n",
"
-2.53035
\n",
"
-0.007
\n",
"
0.0
\n",
"
0.003
\n",
"
6.210
\n",
"
...
\n",
"
8.79
\n",
"
1.176
\n",
"
24.9
\n",
"
22.26
\n",
"
13.28
\n",
"
6.210
\n",
"
0.0
\n",
"
166.435
\n",
"
17.3510
\n",
"
-7999.0
\n",
"
\n",
" \n",
"
\n",
"
2 rows × 21 columns
\n",
"
"
],
"text/plain": [
" Unnamed: 0 year DOY PST dni ghi \\\n",
"2020-01-01 00:00:00-08:00 0 2020 1 0 -1.67051 -2.53035 \n",
"2020-01-01 00:01:00-08:00 0 2020 1 1 -1.64962 -2.53035 \n",
"\n",
" Global UVA [W/m^2] Global UVE [W/m^2] \\\n",
"2020-01-01 00:00:00-08:00 -0.005 0.0 \n",
"2020-01-01 00:01:00-08:00 -0.007 0.0 \n",
"\n",
" Global UVE [Index] Dry Bulb Temp [deg C] ... \\\n",
"2020-01-01 00:00:00-08:00 0.002 6.004 ... \n",
"2020-01-01 00:01:00-08:00 0.003 6.210 ... \n",
"\n",
" Avg Wind Direction @ 30ft [deg from N] \\\n",
"2020-01-01 00:00:00-08:00 17.67 \n",
"2020-01-01 00:01:00-08:00 8.79 \n",
"\n",
" Peak Wind Speed @ 30ft [m/s] UVSAET Temp [deg C] \\\n",
"2020-01-01 00:00:00-08:00 0.098 24.9 \n",
"2020-01-01 00:01:00-08:00 1.176 24.9 \n",
"\n",
" Logger Temp [deg C] Logger Battery [VDC] \\\n",
"2020-01-01 00:00:00-08:00 22.25 13.28 \n",
"2020-01-01 00:01:00-08:00 22.26 13.28 \n",
"\n",
" Wind Chill Temp [deg C] dhi \\\n",
"2020-01-01 00:00:00-08:00 6.004 0.0 \n",
"2020-01-01 00:01:00-08:00 6.210 0.0 \n",
"\n",
" Zenith Angle [degrees] Azimuth Angle [degrees] \\\n",
"2020-01-01 00:00:00-08:00 166.494 16.4003 \n",
"2020-01-01 00:01:00-08:00 166.435 17.3510 \n",
"\n",
" Airmass \n",
"2020-01-01 00:00:00-08:00 -7999.0 \n",
"2020-01-01 00:01:00-08:00 -7999.0 \n",
"\n",
"[2 rows x 21 columns]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Dictionary to rename certain variables from the raw data\n",
"var_map = {'Global Horiz [W/m^2]': 'ghi',\n",
" 'Direct Normal [W/m^2]':'dni',\n",
" 'Diffuse Horiz (calc) [W/m^2]':'dhi',\n",
" 'Year':'year'}\n",
"\n",
"# Retrieving the raw data from the station \n",
"df_ref = pvlib.iotools.read_midc_raw_data_from_nrel('UNLV', # Station id\n",
" pd.Timestamp('20200101'), # Start date YYYYMMDD\n",
" pd.Timestamp('20201231'), # End date YYYYMMDD\n",
" variable_map=var_map) # Variable Map\n",
"# Let's have a look to the first 2 rows of the dataset\n",
"df_ref.head(2)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Unnamed: 0
\n",
"
year
\n",
"
DOY
\n",
"
PST
\n",
"
dni
\n",
"
ghi
\n",
"
Global UVA [W/m^2]
\n",
"
Global UVE [W/m^2]
\n",
"
Global UVE [Index]
\n",
"
Dry Bulb Temp [deg C]
\n",
"
...
\n",
"
Avg Wind Direction @ 30ft [deg from N]
\n",
"
Peak Wind Speed @ 30ft [m/s]
\n",
"
UVSAET Temp [deg C]
\n",
"
Logger Temp [deg C]
\n",
"
Logger Battery [VDC]
\n",
"
Wind Chill Temp [deg C]
\n",
"
dhi
\n",
"
Zenith Angle [degrees]
\n",
"
Azimuth Angle [degrees]
\n",
"
Airmass
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-12-31 23:58:00-08:00
\n",
"
0
\n",
"
2020
\n",
"
366
\n",
"
2358
\n",
"
0.000000
\n",
"
-3.09366
\n",
"
-0.016
\n",
"
0.0
\n",
"
0.003
\n",
"
10.45
\n",
"
...
\n",
"
4.834
\n",
"
7.546
\n",
"
24.75
\n",
"
18.97
\n",
"
13.34
\n",
"
8.06
\n",
"
0.0
\n",
"
166.558
\n",
"
14.0772
\n",
"
-7999.0
\n",
"
\n",
"
\n",
"
2020-12-31 23:59:00-08:00
\n",
"
0
\n",
"
2020
\n",
"
366
\n",
"
2359
\n",
"
0.473466
\n",
"
-3.09367
\n",
"
-0.015
\n",
"
0.0
\n",
"
0.003
\n",
"
10.46
\n",
"
...
\n",
"
7.997
\n",
"
6.664
\n",
"
24.81
\n",
"
18.97
\n",
"
13.35
\n",
"
8.24
\n",
"
0.0
\n",
"
166.507
\n",
"
15.0409
\n",
"
-7999.0
\n",
"
\n",
" \n",
"
\n",
"
2 rows × 21 columns
\n",
"
"
],
"text/plain": [
" Unnamed: 0 year DOY PST dni ghi \\\n",
"2020-12-31 23:58:00-08:00 0 2020 366 2358 0.000000 -3.09366 \n",
"2020-12-31 23:59:00-08:00 0 2020 366 2359 0.473466 -3.09367 \n",
"\n",
" Global UVA [W/m^2] Global UVE [W/m^2] \\\n",
"2020-12-31 23:58:00-08:00 -0.016 0.0 \n",
"2020-12-31 23:59:00-08:00 -0.015 0.0 \n",
"\n",
" Global UVE [Index] Dry Bulb Temp [deg C] ... \\\n",
"2020-12-31 23:58:00-08:00 0.003 10.45 ... \n",
"2020-12-31 23:59:00-08:00 0.003 10.46 ... \n",
"\n",
" Avg Wind Direction @ 30ft [deg from N] \\\n",
"2020-12-31 23:58:00-08:00 4.834 \n",
"2020-12-31 23:59:00-08:00 7.997 \n",
"\n",
" Peak Wind Speed @ 30ft [m/s] UVSAET Temp [deg C] \\\n",
"2020-12-31 23:58:00-08:00 7.546 24.75 \n",
"2020-12-31 23:59:00-08:00 6.664 24.81 \n",
"\n",
" Logger Temp [deg C] Logger Battery [VDC] \\\n",
"2020-12-31 23:58:00-08:00 18.97 13.34 \n",
"2020-12-31 23:59:00-08:00 18.97 13.35 \n",
"\n",
" Wind Chill Temp [deg C] dhi \\\n",
"2020-12-31 23:58:00-08:00 8.06 0.0 \n",
"2020-12-31 23:59:00-08:00 8.24 0.0 \n",
"\n",
" Zenith Angle [degrees] Azimuth Angle [degrees] \\\n",
"2020-12-31 23:58:00-08:00 166.558 14.0772 \n",
"2020-12-31 23:59:00-08:00 166.507 15.0409 \n",
"\n",
" Airmass \n",
"2020-12-31 23:58:00-08:00 -7999.0 \n",
"2020-12-31 23:59:00-08:00 -7999.0 \n",
"\n",
"[2 rows x 21 columns]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Let's have a look to the last 2 rows of the dataset\n",
"df_ref.tail(2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The dataset is 1-minute resolution data with 21 variables related to meteorological and other relevant data: ambient temperature, wind speed, wind direction, global horizontal irradiance (GHI), direct normal irradiance (DNI), diffuse horizontal irradiance (DHI), zenith and azimuth angles, airmass, among other. \n",
"\n",
"For the examples in this section we will use GHI, DNI and DHI measurements and time-related data."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Index(['ghi', 'dni', 'dhi', 'year', 'month', 'day', 'hour', 'minute', 'date',\n",
" 'time', 'timestamp', 'epoch'],\n",
" dtype='object')"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Slice desired variables out of the 21 variables provided in the raw data. \n",
"df_ref = df_ref[['ghi', 'dni', 'dhi', 'year']]\n",
"\n",
"# Add multiple temporal data to the dataset\n",
"df_ref['month'] = df_ref.index.month\n",
"df_ref['day'] = df_ref.index.day\n",
"df_ref['hour'] = df_ref.index.hour\n",
"df_ref['minute'] = df_ref.index.minute\n",
"df_ref['date'] = df_ref.index.strftime('%Y-%m-%d')\n",
"df_ref['time'] = df_ref.index.strftime('%H:%M:%S')\n",
"df_ref['timestamp'] = df_ref.index.strftime('%Y-%m-%d %H:%M:%S%z')\n",
"\n",
"# Epoch format\n",
"df_ref['epoch'] = df_ref.index.astype('int64')//1e9\n",
"\n",
"# Reset the Index of the DataFrame\n",
"df_ref = df_ref.reset_index(drop=True)\n",
"\n",
"# Let's have a look to the resulting columns of the dataset\n",
"df_ref.columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's visualize the first rows of the **customized reference dataframe:**"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-0800
\n",
"
1577865600
\n",
"
\n",
"
\n",
"
1
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-0800
\n",
"
1577865660
\n",
"
\n",
"
\n",
"
2
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-0800
\n",
"
1577865720
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour minute date \\\n",
"0 -2.53035 -1.670510 0.0 2020 1 1 0 0 2020-01-01 \n",
"1 -2.53035 -1.649620 0.0 2020 1 1 0 1 2020-01-01 \n",
"2 -2.53035 -0.856135 0.0 2020 1 1 0 2 2020-01-01 \n",
"\n",
" time timestamp epoch \n",
"0 00:00:00 2020-01-01 00:00:00-0800 1577865600 \n",
"1 00:01:00 2020-01-01 00:01:00-0800 1577865660 \n",
"2 00:02:00 2020-01-01 00:02:00-0800 1577865720 "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# First 3 rows in the dataframe\n",
"df_ref.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now that we have our customized reference dataset of 1-minute irradiance measurements for 2020 and temporal data, we can start building the timeseries in different ways.\n",
"\n",
"### 1.2 Time-series when timestamps are available:\n",
"\n",
"When timestamps are available, the most straightforward way to build the DataFrame with a datetime index is to convert the column with the timestamp into datetime format and set it as index.\n",
"\n",
"Let's see how!"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
\n",
"
\n",
"
timestamp
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
1577865600
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
1577865660
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
1577865720
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour \\\n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 -2.53035 -1.670510 0.0 2020 1 1 0 \n",
"2020-01-01 00:01:00-08:00 -2.53035 -1.649620 0.0 2020 1 1 0 \n",
"2020-01-01 00:02:00-08:00 -2.53035 -0.856135 0.0 2020 1 1 0 \n",
"\n",
" minute date time \\\n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 0 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 1 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2 2020-01-01 00:02:00 \n",
"\n",
" timestamp epoch \n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00-08:00 1577865600 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00-08:00 1577865660 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00-08:00 1577865720 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# A new dataframe copy of the reference dataset\n",
"df = df_ref.copy()\n",
"# Convert the timestamp string into datetime format \n",
"df['timestamp'] = pd.to_datetime(df['timestamp'], format='%Y-%m-%d %H:%M:%S%z')\n",
"# Set timestamp column as index\n",
"df = df.set_index(df['timestamp'])\n",
"# See the first 3 rows of the DataFrame with Datetime Index\n",
"df.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The format of the timestamp is specified in the argument 'format' as a string and can be adapted to any case. The available options in Python can be checked in this [link](https://strftime.org/). \n",
"\n",
"Universal Time Coordinated (UTC) is usually the timestamp provided for many solar radiation data networks and platforms like the BSRN, PVGIS, etc. However, data can be also reported in local time like in our example. Timestamps can be converted to other timezones with the funcion *tz_convert*, which can be useful when dealing with data from different databases and locations worldwide:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
timestamp_utc
\n",
"
\n",
"
\n",
"
timestamp
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
1577865600
\n",
"
2020-01-01 08:00:00+00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
1577865660
\n",
"
2020-01-01 08:01:00+00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
1577865720
\n",
"
2020-01-01 08:02:00+00:00
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour \\\n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 -2.53035 -1.670510 0.0 2020 1 1 0 \n",
"2020-01-01 00:01:00-08:00 -2.53035 -1.649620 0.0 2020 1 1 0 \n",
"2020-01-01 00:02:00-08:00 -2.53035 -0.856135 0.0 2020 1 1 0 \n",
"\n",
" minute date time \\\n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 0 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 1 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2 2020-01-01 00:02:00 \n",
"\n",
" timestamp epoch \\\n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00-08:00 1577865600 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00-08:00 1577865660 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00-08:00 1577865720 \n",
"\n",
" timestamp_utc \n",
"timestamp \n",
"2020-01-01 00:00:00-08:00 2020-01-01 08:00:00+00:00 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 08:01:00+00:00 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 08:02:00+00:00 "
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Add UTC timestamp from the local time (Pacific Summer Time)\n",
"df['timestamp_utc'] = df.index.tz_convert('UTC')\n",
"# See the first 3 rows \n",
"df.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The valid timezone strings for other timezones can be found in this [link](https://pvlib-python.readthedocs.io/en/stable/timetimezones.html). When the timezone is not provided as part of the timestamp, the function *tz_localize* can be used to localize the values in a timezone-naive series. *tz_localize* will be used in the next example."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.3 Time-series when date and time are available:\n",
"\n",
"When date and time are available in separate columns, a timestamp can be created in a new column and the new column can then be set as index and localized. Let's have a look how to do that:\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
datetime
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-0800
\n",
"
1577865600
\n",
"
2020-01-01 00:00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-0800
\n",
"
1577865660
\n",
"
2020-01-01 00:01:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-0800
\n",
"
1577865720
\n",
"
2020-01-01 00:02:00
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.53035 -1.670510 0.0 2020 1 1 0 \n",
"2020-01-01 00:01:00-08:00 -2.53035 -1.649620 0.0 2020 1 1 0 \n",
"2020-01-01 00:02:00-08:00 -2.53035 -0.856135 0.0 2020 1 1 0 \n",
"\n",
" minute date time \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 0 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 1 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2 2020-01-01 00:02:00 \n",
"\n",
" timestamp epoch \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00-0800 1577865600 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00-0800 1577865660 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00-0800 1577865720 \n",
"\n",
" datetime \n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# A new dataframe copy of the reference dataset\n",
"df = df_ref.copy()\n",
"# New column with the date and time \n",
"df['datetime'] = df['date'] + 'T' + df['time']\n",
"# Convert the new column into datetime format \n",
"df['datetime'] = pd.to_datetime(df['datetime'], format='%Y-%m-%dT%H:%M:%S')\n",
"# Set the column 'datetime' as index and localize it to its timezone\n",
"df = df.set_index(df['datetime']).tz_localize('Etc/GMT+8')\n",
"# See the first 3 rows \n",
"df.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.4 Time-series when the time data is split in multiple columns:\n",
"\n",
"If time-related data are split across multiple columns, a timestamp can be created in a new column similarly than in the previous case. Let's imagine our dataset would have the year, month, day, hour, and minute in separate columns. In that case, we could build our time-series as follows:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
datetime
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-0800
\n",
"
1577865600
\n",
"
2020-01-01 00:00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-0800
\n",
"
1577865660
\n",
"
2020-01-01 00:01:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-0800
\n",
"
1577865720
\n",
"
2020-01-01 00:02:00
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.53035 -1.670510 0.0 2020 1 1 0 \n",
"2020-01-01 00:01:00-08:00 -2.53035 -1.649620 0.0 2020 1 1 0 \n",
"2020-01-01 00:02:00-08:00 -2.53035 -0.856135 0.0 2020 1 1 0 \n",
"\n",
" minute date time \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 0 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 1 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2 2020-01-01 00:02:00 \n",
"\n",
" timestamp epoch \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00-0800 1577865600 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00-0800 1577865660 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00-0800 1577865720 \n",
"\n",
" datetime \n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00 "
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# A new dataframe copy of the reference dataset\n",
"df = df_ref.copy()\n",
"# Let's reduce the code lines and define the new string within the 'to_datetime' function\n",
"df['datetime'] = pd.to_datetime(df[['year', 'month', 'day', 'hour', 'minute']], \n",
" format = '%Y-%m-%d%H:%M')\n",
"# Set the column 'datetime' as index\n",
"df = df.set_index(df['datetime']) \n",
"# Localize the datetime series\n",
"df.index = df.index.tz_localize('Etc/GMT+8') \n",
"# See the first 3 rows \n",
"df.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1.5 Time-series when the timestamp is given as epoch (Unix Time)\n",
"\n",
"If the dataset has epoch timestamps, note that the data will have UTC time. However, it can be converted to any timezone using the function *tz_convert*. If there are epoch timestamps, a datetime series can be formed as follows:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dni
\n",
"
dhi
\n",
"
year
\n",
"
month
\n",
"
day
\n",
"
hour
\n",
"
minute
\n",
"
date
\n",
"
time
\n",
"
timestamp
\n",
"
epoch
\n",
"
datetime
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
-1.670510
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
0
\n",
"
2020-01-01
\n",
"
00:00:00
\n",
"
2020-01-01 00:00:00-0800
\n",
"
1577865600
\n",
"
2020-01-01 08:00:00+00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
-1.649620
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
1
\n",
"
2020-01-01
\n",
"
00:01:00
\n",
"
2020-01-01 00:01:00-0800
\n",
"
1577865660
\n",
"
2020-01-01 08:01:00+00:00
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
-0.856135
\n",
"
0.0
\n",
"
2020
\n",
"
1
\n",
"
1
\n",
"
0
\n",
"
2
\n",
"
2020-01-01
\n",
"
00:02:00
\n",
"
2020-01-01 00:02:00-0800
\n",
"
1577865720
\n",
"
2020-01-01 08:02:00+00:00
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dni dhi year month day hour \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.53035 -1.670510 0.0 2020 1 1 0 \n",
"2020-01-01 00:01:00-08:00 -2.53035 -1.649620 0.0 2020 1 1 0 \n",
"2020-01-01 00:02:00-08:00 -2.53035 -0.856135 0.0 2020 1 1 0 \n",
"\n",
" minute date time \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 0 2020-01-01 00:00:00 \n",
"2020-01-01 00:01:00-08:00 1 2020-01-01 00:01:00 \n",
"2020-01-01 00:02:00-08:00 2 2020-01-01 00:02:00 \n",
"\n",
" timestamp epoch \\\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 00:00:00-0800 1577865600 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 00:01:00-0800 1577865660 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 00:02:00-0800 1577865720 \n",
"\n",
" datetime \n",
"datetime \n",
"2020-01-01 00:00:00-08:00 2020-01-01 08:00:00+00:00 \n",
"2020-01-01 00:01:00-08:00 2020-01-01 08:01:00+00:00 \n",
"2020-01-01 00:02:00-08:00 2020-01-01 08:02:00+00:00 "
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# A new dataframe copy of the reference dataset\n",
"df = df_ref.copy()\n",
"# Convert epoch timestamps to datetime format and localize\n",
"df['datetime'] = pd.to_datetime(df['epoch'], unit='s', utc=True)\n",
"# Set datetime as index and convert UTC time to local time\n",
"df = df.set_index(df['datetime']).tz_convert('Etc/GMT+8')\n",
"# See the results\n",
"df.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We have seen how the same DataFrame with *datetimeindex* can be obtained in multiple ways depending on the format of time data provided.\n",
"\n",
"***\n",
"\n",
"## 2 Down and up-sampling time-series data\n",
"\n",
"When assessing solar resource, you may need a different time-resolution than your data for a particular part of the analysis. In those cases, it is possible to **down-sample and up-sample the data at different temporal resolutions** using two different methods within [pandas library](https://pandas.pydata.org/) called *resample* and *asfreq*. Depending on your needs, you will opt for one or the other. Regardless of the method, both of them require a DataFrame with *datetimeindex* either time-aware (localized) or time-naive (not localized). \n",
"\n",
"### 2.1 Method 'asfreq' vs. 'resample'\n",
"Let's first create a new DataFrame with only the columns with solar data and see the differences between both methods with examples."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.53035
\n",
"
0.0
\n",
"
-1.670510
\n",
"
\n",
"
\n",
"
2020-01-01 00:01:00-08:00
\n",
"
-2.53035
\n",
"
0.0
\n",
"
-1.649620
\n",
"
\n",
"
\n",
"
2020-01-01 00:02:00-08:00
\n",
"
-2.53035
\n",
"
0.0
\n",
"
-0.856135
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.53035 0.0 -1.670510\n",
"2020-01-01 00:01:00-08:00 -2.53035 0.0 -1.649620\n",
"2020-01-01 00:02:00-08:00 -2.53035 0.0 -0.856135"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# New DataFrame with 1-minute data and solar data\n",
"df_1min = df[['ghi', 'dhi', 'dni']]\n",
"# See our new DataFrame\n",
"df_1min.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's try to obtain a DataFrame down-sampled with the maximum monthly data with both methods and see the differences. With *asfreq*, it would be the following:"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"ghi -2.529330\n",
"dhi 0.000000\n",
"dni -0.834868\n",
"dtype: float64"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_1min.asfreq(\"1M\").max()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With *resample* the result would be:"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-31 00:00:00-08:00
\n",
"
802.383
\n",
"
386.083
\n",
"
972.789
\n",
"
\n",
"
\n",
"
2020-02-29 00:00:00-08:00
\n",
"
956.928
\n",
"
582.715
\n",
"
1024.650
\n",
"
\n",
"
\n",
"
2020-03-31 00:00:00-08:00
\n",
"
1237.910
\n",
"
632.961
\n",
"
1011.700
\n",
"
\n",
"
\n",
"
2020-04-30 00:00:00-08:00
\n",
"
1370.180
\n",
"
705.203
\n",
"
999.360
\n",
"
\n",
"
\n",
"
2020-05-31 00:00:00-08:00
\n",
"
1253.240
\n",
"
590.468
\n",
"
983.210
\n",
"
\n",
"
\n",
"
2020-06-30 00:00:00-08:00
\n",
"
1340.240
\n",
"
943.659
\n",
"
999.233
\n",
"
\n",
"
\n",
"
2020-07-31 00:00:00-08:00
\n",
"
1260.490
\n",
"
1056.520
\n",
"
1015.320
\n",
"
\n",
"
\n",
"
2020-08-31 00:00:00-08:00
\n",
"
1114.410
\n",
"
659.908
\n",
"
1010.130
\n",
"
\n",
"
\n",
"
2020-09-30 00:00:00-08:00
\n",
"
1081.750
\n",
"
670.886
\n",
"
959.591
\n",
"
\n",
"
\n",
"
2020-10-31 00:00:00-08:00
\n",
"
1047.400
\n",
"
895.895
\n",
"
2758.840
\n",
"
\n",
"
\n",
"
2020-11-30 00:00:00-08:00
\n",
"
902.913
\n",
"
411.350
\n",
"
973.702
\n",
"
\n",
"
\n",
"
2020-12-31 00:00:00-08:00
\n",
"
793.258
\n",
"
393.958
\n",
"
985.791
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-31 00:00:00-08:00 802.383 386.083 972.789\n",
"2020-02-29 00:00:00-08:00 956.928 582.715 1024.650\n",
"2020-03-31 00:00:00-08:00 1237.910 632.961 1011.700\n",
"2020-04-30 00:00:00-08:00 1370.180 705.203 999.360\n",
"2020-05-31 00:00:00-08:00 1253.240 590.468 983.210\n",
"2020-06-30 00:00:00-08:00 1340.240 943.659 999.233\n",
"2020-07-31 00:00:00-08:00 1260.490 1056.520 1015.320\n",
"2020-08-31 00:00:00-08:00 1114.410 659.908 1010.130\n",
"2020-09-30 00:00:00-08:00 1081.750 670.886 959.591\n",
"2020-10-31 00:00:00-08:00 1047.400 895.895 2758.840\n",
"2020-11-30 00:00:00-08:00 902.913 411.350 973.702\n",
"2020-12-31 00:00:00-08:00 793.258 393.958 985.791"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_1min.resample(\"1M\").max()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is obvious that the outputs are not the same and that is because the methods work differently. *asfreq* takes the value at the simultaneous stamps given by the frequency argument. See below:"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-31 00:00:00-08:00
\n",
"
-3.65348
\n",
"
0.0
\n",
"
-1.669830
\n",
"
\n",
"
\n",
"
2020-02-29 00:00:00-08:00
\n",
"
-3.09137
\n",
"
0.0
\n",
"
-1.669820
\n",
"
\n",
"
\n",
"
2020-03-31 00:00:00-08:00
\n",
"
-2.52933
\n",
"
0.0
\n",
"
-0.834917
\n",
"
\n",
"
\n",
"
2020-04-30 00:00:00-08:00
\n",
"
-3.61963
\n",
"
0.0
\n",
"
-1.669340
\n",
"
\n",
"
\n",
"
2020-05-31 00:00:00-08:00
\n",
"
-3.22207
\n",
"
0.0
\n",
"
-1.669590
\n",
"
\n",
"
\n",
"
2020-06-30 00:00:00-08:00
\n",
"
-3.65326
\n",
"
0.0
\n",
"
-0.834868
\n",
"
\n",
"
\n",
"
2020-07-31 00:00:00-08:00
\n",
"
-4.21426
\n",
"
0.0
\n",
"
-1.857120
\n",
"
\n",
"
\n",
"
2020-08-31 00:00:00-08:00
\n",
"
-5.14251
\n",
"
0.0
\n",
"
-1.620990
\n",
"
\n",
"
\n",
"
2020-09-30 00:00:00-08:00
\n",
"
-4.21555
\n",
"
0.0
\n",
"
-1.690710
\n",
"
\n",
"
\n",
"
2020-10-31 00:00:00-08:00
\n",
"
-3.65348
\n",
"
0.0
\n",
"
-1.669830
\n",
"
\n",
"
\n",
"
2020-11-30 00:00:00-08:00
\n",
"
-3.09265
\n",
"
0.0
\n",
"
-1.670510
\n",
"
\n",
"
\n",
"
2020-12-31 00:00:00-08:00
\n",
"
-2.53110
\n",
"
0.0
\n",
"
-1.176670
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-31 00:00:00-08:00 -3.65348 0.0 -1.669830\n",
"2020-02-29 00:00:00-08:00 -3.09137 0.0 -1.669820\n",
"2020-03-31 00:00:00-08:00 -2.52933 0.0 -0.834917\n",
"2020-04-30 00:00:00-08:00 -3.61963 0.0 -1.669340\n",
"2020-05-31 00:00:00-08:00 -3.22207 0.0 -1.669590\n",
"2020-06-30 00:00:00-08:00 -3.65326 0.0 -0.834868\n",
"2020-07-31 00:00:00-08:00 -4.21426 0.0 -1.857120\n",
"2020-08-31 00:00:00-08:00 -5.14251 0.0 -1.620990\n",
"2020-09-30 00:00:00-08:00 -4.21555 0.0 -1.690710\n",
"2020-10-31 00:00:00-08:00 -3.65348 0.0 -1.669830\n",
"2020-11-30 00:00:00-08:00 -3.09265 0.0 -1.670510\n",
"2020-12-31 00:00:00-08:00 -2.53110 0.0 -1.176670"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_1min.asfreq(\"1M\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Then *.max()* has returned the maximum of each of the columns. \n",
"\n",
"In contrast, *resample* does return the maximum value within the period of time at the specified frequency. *resample* method requires a mathematical operation to perform in the resampled data (the maximum value in our case). Otherwise, it would return a *DatetimeIndexResampler* object without showing any data. See below:"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_1min.resample(\"1M\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The *resample* method accepts multiple **mathematical and statistical operations**. For example: maximum (max), minimum (min), arithmetic mean (mean), standard deviation (std), median (median), mode (mode), addition (sum), among others. \n",
"\n",
"Both methods allow for multiple **frequencies options**, the available frequency tags within Python can be found [here](https://stackoverflow.com/questions/35339139/where-is-the-documentation-on-pandas-freq-tags)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.2 Down-sampling the data in a time-series\n",
"\n",
"Down-sampling permits turning more frequent values into less frequent. In the context of solar resource and considering our 1-minute resolution dataset, down-sampling can be used for:\n",
"- Producing a timeseries of hourly/daily average irradiance.\n",
"- Producing a timeseries of maximum daily irradiance.\n",
"- Estimating the hourly/daily/monthly sums of irradiation.\n",
"- And many more!\n",
"\n",
"Let's implement some of these listed examples!\n",
"\n",
"#### Producing hourly average irradiance from minutely observations"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(8784, 3)"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Resampling to hourly mean values\n",
"df_hourly = df_1min.resample(\"1H\").mean()\n",
"# Showing the shape of the new DataFrame\n",
"df_hourly.shape # returns Rows, Columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"There are 8760 hours in a year. Yet, we can have a look to the first few rows of the DataFrame:"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-31 00:00:00-08:00 100.817440 29.251020 175.754908\n",
"2020-02-29 00:00:00-08:00 129.220507 30.514029 206.374110\n",
"2020-03-31 00:00:00-08:00 164.224723 59.140048 179.448458\n",
"2020-04-30 00:00:00-08:00 200.459859 59.307923 217.186189\n",
"2020-05-31 00:00:00-08:00 255.336215 54.922454 294.929842\n",
"2020-06-30 00:00:00-08:00 254.262295 62.085767 277.856782\n",
"2020-07-31 00:00:00-08:00 257.105784 48.821531 305.900237\n",
"2020-08-31 00:00:00-08:00 223.419662 56.213721 251.208590\n",
"2020-09-30 00:00:00-08:00 181.248566 58.956766 199.959672\n",
"2020-10-31 00:00:00-08:00 153.368877 51.432641 195.650044\n",
"2020-11-30 00:00:00-08:00 105.726263 25.099434 190.355946\n",
"2020-12-31 00:00:00-08:00 88.972596 25.698295 165.691623"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Resampling to monthly aggregated values\n",
"monthly_energy = df_1min[['ghi', 'dhi', 'dni']].resample(\"1M\").sum()*(1/60)\n",
"# See the results expressed in kWh·sqm\n",
"monthly_energy/1000"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It could be done in similar way for other resolutions (e.g. daily or annual irradiation)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.3 Up-sampling the data in a time-series\n",
"\n",
"Up-sampling permits obtaining more frequent values from less frequent. For solar data, depending on the application up to sub-minutely data could be required and up-sampling is a technique that provides a manner to increase the temporal resolution to adapt it to our needs. For example, turning an hourly time-series into a half-hourly. Let's see an example using both *resample* and *asfreq*.\n",
"\n",
"#### Producing half-hourly irradiance series from hourly observations\n",
"Using the DataFrame *df_hourly* created previously, it can be up-sample as follows:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 00:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:30:00-08:00 NaN NaN NaN"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Using 'resample' method:\n",
"df_hourly.resample(\"30Min\").mean().head(10)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
NaN
\n",
"
NaN
\n",
"
NaN
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 00:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:30:00-08:00 NaN NaN NaN\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:30:00-08:00 NaN NaN NaN"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Using 'asfreq' method:\n",
"df_hourly.asfreq(\"30Min\").head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Contrary to the case of down-sampling, both *asfreq* and *resample* provide similar results when up-sampling. However, *asfreq* provides additional functionalities to treat the new timestamps without data, i.e. NaN values.\n",
"\n",
"By passing the argument *'method'* with the string *'backfill'* or *'bfill'* uses the next valid observation to fill the NaN value (back filling). If instead, the string *'pad'* or *'ffill'* is given, the method assigns the last valid observation forward to the next valid (forward filling). \n",
"\n",
"Let's see the same example adding this argument:"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
-1.891827
\n",
"
0.0
\n",
"
-0.006960
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 00:30:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:30:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:30:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:30:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:30:00-08:00 -1.891827 0.0 -0.006960"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Half-hourly up-sample with back filling function\n",
"df_hourly.asfreq(\"30Min\", method='bfill').head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see that the DataFrame now contains the next valid hourly value in the newly obtained half-hourly timestamps of the previous hour. It would take the previous valid hourly value if we used forward filling. For example:"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 00:30:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:30:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:30:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:30:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:30:00-08:00 -1.683542 0.0 -0.013457"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Half-hourly up-sample with forward-filling function\n",
"df_hourly.asfreq(\"30Min\", method='ffill').head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The forward filling option provides the same value for o'clock and half past timestamps within the same hour. In addition to these two ways to complete the NaN values, the method *asfreq* can replace the NaN values with a constant. See below:"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.0
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
0.000000
\n",
"
0.0
\n",
"
0.000000
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.0
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
0.000000
\n",
"
0.0
\n",
"
0.000000
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.0
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
0.000000
\n",
"
0.0
\n",
"
0.000000
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.0
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
0.000000
\n",
"
0.0
\n",
"
0.000000
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.0
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
0.000000
\n",
"
0.0
\n",
"
0.000000
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.0 -0.764837\n",
"2020-01-01 00:30:00-08:00 0.000000 0.0 0.000000\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.0 -0.631080\n",
"2020-01-01 01:30:00-08:00 0.000000 0.0 0.000000\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.0 -0.374704\n",
"2020-01-01 02:30:00-08:00 0.000000 0.0 0.000000\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.0 -0.379228\n",
"2020-01-01 03:30:00-08:00 0.000000 0.0 0.000000\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.0 -0.013457\n",
"2020-01-01 04:30:00-08:00 0.000000 0.0 0.000000"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Half-hourly up-sample filling the new timestamps with a constant\n",
"df_hourly.asfreq(\"30Min\", fill_value=0).head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The use of the methods *asfreq* or *resample* will depend on your dataset and the analysis you aim to undertake.\n",
"\n",
"***"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 3 Interpolating time-series data\n",
"\n",
"When up-sampling the data series, it can happen that back-filling, forward-filling and constant replacement does not necessarily work for your analysis/application. An alternative approach is interpolating the replacing the NaN values with an interpolated result. Interpolation in Pandas DataFrames with *DatetimeIndex* is done with the *interpolate* method.\n",
"\n",
"The mathematical interpolation method in *interpolate* is defined with the argument called *'method'*. Pandas permits several interpolation methods, such as 'linear', 'cubic', 'quadratic', 'spline', 'polynomial' and others. All the interpolation options can be found in the [documentation](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.interpolate.html) of the *interpolate* method. \n",
"\n",
"Following the previous example, let's implement interpolation in the missing values of the half-hourly timestamps using 'linear', 'cubic' and 'polynomial' methods:"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.000000 -0.764837\n",
"2020-01-01 00:30:00-08:00 -2.708668 0.015477 -0.754314\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.000000 -0.631080\n",
"2020-01-01 01:30:00-08:00 -2.184142 -0.015477 -0.477191\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.000000 -0.374704\n",
"2020-01-01 02:30:00-08:00 -1.929019 0.046430 -0.371559\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.000000 -0.379228\n",
"2020-01-01 03:30:00-08:00 -2.027425 -0.170243 -0.284694\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.000000 -0.013457\n",
"2020-01-01 04:30:00-08:00 -1.097302 0.634542 0.333660"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Interpolate missing values (NaN) with cubic interpolation\n",
"df_cubic = df_30min.interpolate(method='cubic')\n",
"# See the results:\n",
"df_cubic.head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With polynomial interpolation, the degree or order of the polynomial function needs to be defined as an argument:"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ghi
\n",
"
dhi
\n",
"
dni
\n",
"
\n",
"
\n",
"
datetime
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-01 00:00:00-08:00
\n",
"
-2.576505
\n",
"
0.000000
\n",
"
-0.764837
\n",
"
\n",
"
\n",
"
2020-01-01 00:30:00-08:00
\n",
"
-1.992626
\n",
"
0.512587
\n",
"
0.655667
\n",
"
\n",
"
\n",
"
2020-01-01 01:00:00-08:00
\n",
"
-2.508561
\n",
"
0.000000
\n",
"
-0.631080
\n",
"
\n",
"
\n",
"
2020-01-01 01:30:00-08:00
\n",
"
-2.485236
\n",
"
-0.214189
\n",
"
-1.068238
\n",
"
\n",
"
\n",
"
2020-01-01 02:00:00-08:00
\n",
"
-1.943371
\n",
"
0.000000
\n",
"
-0.374704
\n",
"
\n",
"
\n",
"
2020-01-01 02:30:00-08:00
\n",
"
-1.619687
\n",
"
0.201377
\n",
"
0.199990
\n",
"
\n",
"
\n",
"
2020-01-01 03:00:00-08:00
\n",
"
-2.023108
\n",
"
0.000000
\n",
"
-0.379228
\n",
"
\n",
"
\n",
"
2020-01-01 03:30:00-08:00
\n",
"
-2.535919
\n",
"
-0.346026
\n",
"
-1.263387
\n",
"
\n",
"
\n",
"
2020-01-01 04:00:00-08:00
\n",
"
-1.683542
\n",
"
0.000000
\n",
"
-0.013457
\n",
"
\n",
"
\n",
"
2020-01-01 04:30:00-08:00
\n",
"
-0.233498
\n",
"
0.762150
\n",
"
2.341007
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" ghi dhi dni\n",
"datetime \n",
"2020-01-01 00:00:00-08:00 -2.576505 0.000000 -0.764837\n",
"2020-01-01 00:30:00-08:00 -1.992626 0.512587 0.655667\n",
"2020-01-01 01:00:00-08:00 -2.508561 0.000000 -0.631080\n",
"2020-01-01 01:30:00-08:00 -2.485236 -0.214189 -1.068238\n",
"2020-01-01 02:00:00-08:00 -1.943371 0.000000 -0.374704\n",
"2020-01-01 02:30:00-08:00 -1.619687 0.201377 0.199990\n",
"2020-01-01 03:00:00-08:00 -2.023108 0.000000 -0.379228\n",
"2020-01-01 03:30:00-08:00 -2.535919 -0.346026 -1.263387\n",
"2020-01-01 04:00:00-08:00 -1.683542 0.000000 -0.013457\n",
"2020-01-01 04:30:00-08:00 -0.233498 0.762150 2.341007"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Interpolate missing values (NaN) with polynomial interpolation\n",
"df_polynomial = df_30min.interpolate(method='polynomial', order=5)\n",
"# See the results:\n",
"df_polynomial.head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The interpolation of NaN values when up-sampling time-series data can help overcome the issues of using back or forward filling, specially if you aim to up-sample at higher frequencies than the example shown (e.g. 1-hour to 15-minute resolution series). The mathematical methods available for interpolation within Pandas are diverse and cover beyond the most common interpolation functions."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 4 Visualizing time-series data\n",
"\n",
"It is often useful to visualize the data to grasp insighs and observe trends about the data. This section shows few examples to visualize time-series data.\n",
"\n",
"### 4.1 Plotting a time-series for a day of interest\n",
"\n",
"Below there is an example to visualize a single day of interest. With DataFrames using *DatetimeIndex* it is easy to select a particular day and Pandas interacts with Matplotlib.Pyplot library to plot straight-away."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Plotting GHI for a given day in the time-series\n",
"df_1min['2020-06-01']['ghi'].plot(label='GHI')\n",
"plt.ylabel('Irradiance [W/m$^2$]')\n",
"plt.xlabel('Local Time [HH:MM]')\n",
"plt.legend(loc='best')\n",
"plt.show() # Not needed in Jupyter Notebooks but usually required in other IDEs."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can visualize the effect of using average (*resample*) vs. instantaneous (*asfreq*) measurements when down-sampling our data."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Plotting GHI for a given day in the time-series\n",
"df_1min['2020-06-01']['ghi'].plot(label='1-min data', alpha=0.4) # Reference data\n",
"df_1min.asfreq('30Min')['2020-06-01']['ghi'].plot(label='30-min instant.') # Instantaneous 30-min values\n",
"df_1min.resample('30Min').mean()['2020-06-01']['ghi'].plot(label='30-min average') # Average 30-min values\n",
"plt.title('Average vs. Actual GHI Measurements') # title of the figure\n",
"plt.ylabel('Irradiance [W/m$^2$]') # y-axis label\n",
"plt.xlabel('Local Time [HH:MM]') # x-axis label\n",
"plt.legend(loc='upper left') # insert legend\n",
"plt.show() # Not needed in Jupyter Notebook but usually required in other IDEs."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.2 Plotting a time-series for a few consecutive days of interest\n",
"\n",
"Below there is an example to visualize a few consecutive days (e.g. 5 days) of interest. By using ['start date']:['end date'] it is possible to select time ranges easily with a DataFrame having a *DatetimeIndex*."
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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Lr/8cmbMmMGMGTPYsmXLqToEp4QLL7yQTz75BFDG5tVXX+1atn37dubMmcOUKVOYM2cOhw4dAuDpp59m1apVAOzdu5fU1FTq6+t54403XMftxhtv5Gc/+xnnnXceCQkJfPvtt6xatYpx48Zx4403ul7Dx8fH9fd7773nWtbb7U8Xuvsc2h/XO++8kzlz5pCQkOAyeLKyskhNTXWtv2LFCpYtW0Z8fDwvvPACTz/9NFOmTGH27NmUl5cDMH/+fFdrotLSUpw9Gnu7vY4O6KnuOqcpj368nwP51QO6z/ERvvx6WUq36/znP/9hyZIlJCUlERgYyK5du1i5ciXvvPMOF110ERaLhfXr1/Piiy/y2muv4efnxw8//EBTUxNz585l8eLFgLqA79u3z5WG+/rrrxMYGEhDQwMzZszg8ssvp6mpiccee4xdu3ZhNptZsGABkyZNAuCuu+7innvuYd68eZw4cYILLriAjIyMAT0efPYAFO4d2H2GTYALew5BrVy5kt/85jcsXbqU9PR0Vq1axaZNmwAYO3YsGzduxGg0sm7dOh588EHef/997r77bubPn8/atWt5/PHHefnll/Hy8uqw74qKCjZs2MBHH33EsmXL2LJlC6+++iozZsxg9+7dTJ48udu5nez2feUP2//AwfKBDbGODRzL/TPv73G97j6H9hQUFLB582YOHjzI8uXLOw137du3j7S0NBobG0lMTOQPf/gDaWlp3HPPPbz55pvcfffd3c7nZLfXOXPQjR8dnQFkzZo1rhPsypUrWbNmDY899hh33nknTU1NfP7555xzzjl4enry5Zdfkp6e7roLrqqq4siRI7i5uTFz5sw29Ueee+451q5dC0BOTg5HjhyhsLCQc889l8DAQACuvPJKDh8+DMC6des4cOCAa/vq6mpqamowm82n5DgMNhMnTiQrK4s1a9Zw0UUXtVlWVVXFDTfcwJEjRxBC0NzcDICmabzxxhtMnDiRW2+9lblz53a672XLliGEYMKECYSGhrq8bykpKWRlZfVovJzs9iOJ7j6H9qxYsQJN0xg/fjxFRUWdrnPeeedhNpsxm834+fmxbNkyACZMmEB6enqP8znZ7XXOHHTjR+e0pCcPzWBQVlbGhg0b2LdvH0IIbDYbQgiefPJJ5s+fzxdffME777zjCg1IKXn++ee54IIL2uznm2++wdvb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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Variables to plot\n",
"vars = ['ghi', 'dni', 'dhi'] \n",
"# Create 3 subplots, with shared X and Y axis\n",
"fig, axs = plt.subplots(3, sharex=True, sharey=True, figsize=(9,6))\n",
"# Add title to the plot\n",
"fig.suptitle('Average Hourly Solar Radiation Observations', fontsize=14)\n",
"\n",
"for i in range(3):\n",
" axs[i].plot(df_1min.resample('1H').mean()['2020-06-01':'2020-06-05'][vars[i]], label='Average') # Average hourly\n",
" axs[i].plot(df_1min.resample('1H').max()['2020-06-01':'2020-06-05'][vars[i]], label='Maximum') # Max. hourly\n",
" axs[i].plot(df_1min.resample('1H').min()['2020-06-01':'2020-06-05'][vars[i]], label='Minimum') # Min. hourly\n",
" axs[i].set_title(vars[i].upper()) # Title for each subplot\n",
"fig.subplots_adjust(hspace=0.3) # Adjust the white space between the subplots titles\n",
"fig.text(0.04, 0.5, 'Irradiance [W/m$^2$]', va='center', rotation='vertical', fontsize=12) # Common Y Axis\n",
"fig.text(0.51, 0.04, 'Local Time', ha='center', fontsize=12) # Common X Axis\n",
"plt.legend(loc='upper center', ncol=3) # Legend for the last subplot or 'axs[i].legend()' in the loop to a legend to each.\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.3 Plotting a time-series for a few non-consecutive days of interest\n",
"\n",
"Below there is an example to visualize a few non-consecutive days of interest, which could be the case when we would like to observe several days scattered throughout the year a single plot. In order to do this, we need to select the day of interest from the DataFrame and then reset its *DatetimeIndex*. For example:"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# List of days of interest\n",
"days = ['2020-01-01', '2020-03-01', '2020-06-01', '2020-09-01']\n",
"# Iterate over the days and plot each of them\n",
"for day in days: \n",
" df_day = df_1min.resample('1H').mean()[day]['ghi'].to_frame() # average hourly of GHI for current day\n",
" df_day = df_day.reset_index(drop=True) # reset its Index to numeric (i.e. 0,1,2,3...)\n",
" plt.plot(df_day, label=day) # plot the current day\n",
"plt.title('Average Hourly GHI Measurements for Days of Interest') # title of the figure\n",
"plt.xticks(np.arange(0, 25, step=3), np.arange(0, 25, step=3)) # set labels positions and names\n",
"plt.ylabel('Irradiance [W/m$^2$]') # y-axis label\n",
"plt.xlabel('Local Time') # x-axis label\n",
"plt.legend(loc='best') # insert legend\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.4 Daily insolation throughout the year\n",
"\n",
"With time-series data, the hourly/daily/monthly insolation (i.e. the sum of accumulated energy) can also be analysed throughout the year with time-series data. For example, below an example to visualize the daily insolation is shown:"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Calculate the daily insolation expressed in kWh·sqm from GHI measurements\n",
"daily_energy = (df_1min['ghi'].resample(\"1D\").sum()*(1/60))/1000 # selecting only GHI returns a Pandas Series\n",
"\n",
"# Create time-series plot\n",
"daily_energy.plot(figsize=(9,6), legend=False) # plot timeseries \n",
"plt.title('Time-series of Daily Insolation') # add title\n",
"plt.ylabel('Energy [kWh/m$^2$]') # add Y-axis label\n",
"plt.xlabel('Time') # add X-axis label\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Time-series data can also be visualized in other ways, for instance, as a heat map."
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Prepare the data for heat map of hourly insolation\n",
"energy_array = pd.DataFrame() # empty DataFrame for the results\n",
"for i in range(1,13): # iterate over months\n",
" # select the data in the month and eliminate the datetimeindex\n",
" df_month = daily_energy[daily_energy.index.month==i].reset_index(drop=True) \n",
" # rename the column with the number of the month\n",
" df_month.columns = [str(i)]\n",
" # Append results to the DataFrame\n",
" energy_array = pd.concat([energy_array, df_month], axis=1)\n",
"# Transpose to have months in y-axis and days in x-axis\n",
"energy_array = energy_array.transpose()\n",
"# Rename the columns of the days \n",
"energy_array.columns = np.arange(1, 32)\n",
"\n",
"# Plot heat map of daily insolation\n",
"months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', # month labels\n",
" 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']\n",
"plt.figure(figsize=(10, 5))\n",
"ax = sns.heatmap(energy_array, cmap='CMRmap', linewidths=0.2, # plot heatmap with Seaborn (sns) library \n",
" xticklabels=2, annot=False,\n",
" cbar_kws={'label': 'Daily Energy [kWh/m$^2$]'})\n",
"ax.set_title('Heat Map of Daily Insolation') # add title\n",
"ax.set_yticklabels(months,rotation=0) # add the months as tick-labels for the y-axis\n",
"ax.set_xticklabels(ax.get_xticklabels(),rotation=0) # add the days as tick-labels for the x-axis\n",
"ax.set_xlabel('Day of the Month')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"***\n",
"\n",
"## Section summary\n",
"\n",
"This section has shown how to build and work with a time-series in Python with multiple examples: \n",
"- We have seen how to prepare a DataFrame with *DatatimeIndex* to be used as a time-series when the timestamps are given in multiple formats in the temporal data and local/UTC time. \n",
"- Changes in the temporal resolution of the data can be applied by down and up-sampling the data and the differences between 2 available methods (*asfreq* and *resample*) have been shown with examples and different sampling frequencies. \n",
"- The interpolation of missing data in time-series can be used to up-sample the resolution of the data and examples with some methods have been shown. \n",
"- Finally, several ideas to visualize data have been presented. \n",
"\n",
"Overall, the possibilities with time-series of solar resource are many. The most useful and suitable analysis and visualizations will be determined by the application and scope of the study.\n",
"\n",
"***\n",
"\n",
"## References\n",
"Andreas, A.; Stoffel, T.; (2006). University of Nevada (UNLV):\n",
"Las Vegas, Nevada (Data); NREL Report No. DA-5500-56509.\n",
"http://dx.doi.org/10.5439/1052548\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}