From 73e6f9e31812e2fc80aceec61524ec41109788af Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Fri, 15 Jan 2021 15:49:10 +0100 Subject: [PATCH 01/54] Add bsrn file to read bsrn files Related to issue #1015. --- pvlib/iotools/bsrn.py | 159 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 pvlib/iotools/bsrn.py diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py new file mode 100644 index 0000000000..7c9ceda35b --- /dev/null +++ b/pvlib/iotools/bsrn.py @@ -0,0 +1,159 @@ +"""Functions to read data from the Baseline Surface Radiation Network (BSRN). +.. codeauthor:: Adam R. Jensen +""" + +import gzip +from collections import OrderedDict +import pandas as pd +import os + + +def read_bsrn(filename): + """ + Read a BSRN station-to-archive file into a DataFrame. + + The BSRN (Baseline Surface Radiation Network) is a world wide network + of high-quality solar radiation monitoring stations as described in [1]_. + The function only parses the basic measurements (LR0100), which include + global, diffuse, direct and downwelling long-wave radiation [2]_. Future + updates may include parsing of additional data and meta-data. + + Required username and password are easily obtainable by writing an email to + Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow + BSRN's Data Release Guidelines [4]_. + + + Parameters + ---------- + filename: str + A relative or absolute file path. + + Returns + ------- + Tuple of the form (data, metadata). + + data: Dataframe + A Dataframe with the columns as described below. For more extensive + description of the variables, consult [2]_. + + metadata: dict + Site metadata included in the file. + + Notes + ----- + Metadata dictionary includes the following fields: + + =============== ====== =============== + Key Format Description + =============== ====== =============== + station String site name + latitude Float site latitude + longitude Float site longitude + elevation Int site elevation + =============== ====== =============== + + The data Dataframe includes the following fields: + + ======================= ====== ========================================== + Key Format Description + ======================= ====== ========================================== + day int Day of the month 1-31 + minute int Minute of the day 0-1439 + ghi float Mean global horizontal irradiance [W/m^2] + ghi_std float Std. global horizontal irradiance [W/m^2] + ghi_min float Min. global horizontal irradiance [W/m^2] + ghi_max float Max. global horizontal irradiance [W/m^2] + dni float Mean direct normal irradiance [W/m^2] + dni_std float Std. direct normal irradiance [W/m^2] + dni_min float Min. direct normal irradiance [W/m^2] + dni_max float Max. direct normal irradiance [W/m^2] + dhi float Mean diffuse horizontal irradiance [W/m^2] + dhi_std float Std. diffuse horizontal irradiance [W/m^2] + dhi_min float Min. diffuse horizontal irradiance [W/m^2] + dhi_max float Max. diffuse horizontal irradiance [W/m^2] + lwd float Mean. downward long-wave radiation [W/m^2] + lwd_std float Std. downward long-wave radiation [W/m^2] + lwd_min float Min. downward long-wave radiation [W/m^2] + lwd_max float Max. downward long-wave radiation [W/m^2] + air_temperature float Air temperature [°C] + relative_humidity float Relative humidity [%] + pressure float Atmospheric pressure [hPa] + ======================= ====== ========================================== + + References + ---------- + .. [1] `World Radiation Monitoring Center - Baseline Surface Radiation Network (BSRN) + `BSRN homepage `_ + .. [2] `Update of the Technical Plan for BSRN Data Management, October 2013, + Global Climate Observing System (GCOS) GCOS-172. + `_ + .. [3] `BSRN Data Retrieval via FTP + `_ + .. [4] `BSRN Data Release Guidelines + `_ + + + + """ + + # Read file and store the starting line number for each each section + line_no_dict = OrderedDict() + if str(filename).endswith('.gz'): # if file is a gzipped (.gz) file + with gzip.open(filename,'rt') as f: + for num, line in enumerate(f): + if ('*U' in line) or ('*C' in line): + line_no_dict[line.splitlines()[0]] = num + else: + with open(filename, 'r') as f: + for num, line in enumerate(f): + if ('*U' in line) or ('*C' in line): + line_no_dict[line.splitlines()[0]] = num + + # Get line numbers for the data set + line_no_dict_keys = list(line_no_dict.keys()) + data_id = [k for k in line_no_dict_keys if ('*C0100' in k) or ('*U0100' in k)][0] # tag for start of data sets, either *C0100 or *U0100 + start_row = line_no_dict[data_id] + 1 # First line number of data + if data_id == line_no_dict_keys[-1]: # check if the dataset is the last dataset + end_row = num + else: + end_row = line_no_dict[line_no_dict_keys[line_no_dict_keys.index(data_id)+1]] # Last line number of data # should there be -1? + nrows = end_row-start_row + + # Read file as a fixed width file (fwf) + COLSPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), + (46,50),(51,55),(56,64),(65,70),(71,75)] + data = pd.read_fwf(filename, skiprows=start_row, nrows=nrows, header=None, + colspecs=COLSPECS, na_values=[-999.0, -99.9]) + + # Assign multi-index and unstack DataFrame, such that each variable has a seperate column + data = data.set_index([data.index//2, data.index%2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') + + # Sort columns to match original order and assign column names + data = data.reindex(sorted(data.columns), axis='columns') + BSRN_COLUMNS = ['day','minute', + 'ghi','ghi_std','ghi_min','ghi_max', + 'dni','dni_std','dni_min','dni_max','empty0','empty1','empty2','empty3','empty4', + 'dhi','dhi_std','dhi_min','dhi_max', + 'lwd','lwd_std','lwd_min','lwd_max', + 'air_temperature','relative_humidity','pressure'] + data.columns = BSRN_COLUMNS + + # Change day and minute type to integer and drop empty columns + data['day'] = data['day'].astype('Int64') + data['minute'] = data['minute'].astype('Int64') + data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') + + # Set datetime index and localize to UTC + basename = os.path.basename(filename) + data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') + + + try: + data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC + except TypeError: + pass + + # Sort index and add missing timesteps + ##data = data.sort_index().asfreq('1min') # can cause problems with duplicate time stamps + meta = {} + return data, meta \ No newline at end of file From 31203b392e9d01f18edbc0de58211c033f5b36af Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sat, 16 Jan 2021 22:59:34 +0100 Subject: [PATCH 02/54] simplified read_bsrn function Simplified how the start and end line of the data is determined. Improved documentation, e.g. moved constants outside of function. --- .../2021_01_16_read_bsrn_pull_request_v2.py | 146 ++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py diff --git a/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py b/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py new file mode 100644 index 0000000000..c7a700b26b --- /dev/null +++ b/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py @@ -0,0 +1,146 @@ +"""Functions to read data from the Baseline Surface Radiation Network (BSRN). +.. codeauthor:: Adam R. Jensen +""" + +import pandas as pd +import gzip +import os + + +"""Functions to read data from the Baseline Surface Radiation Network (BSRN). +.. codeauthor:: Adam R. Jensen +""" + + +COL_SPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), + (46,50),(51,55),(56,64),(65,70),(71,75)] + +BSRN_COLUMNS = ['day','minute', + 'ghi','ghi_std','ghi_min','ghi_max', + 'dni','dni_std','dni_min','dni_max', + 'empty0','empty1','empty2','empty3','empty4', + 'dhi','dhi_std','dhi_min','dhi_max', + 'lwd','lwd_std','lwd_min','lwd_max', + 'air_temperature','relative_humidity','pressure'] + + +def read_bsrn(filename): + """ + Read a BSRN station-to-archive file into a DataFrame. + + The BSRN (Baseline Surface Radiation Network) is a world wide network + of high-quality solar radiation monitoring stations as described in [1]_. + The function only parses the basic measurements (LR0100), which include + global, diffuse, direct and downwelling long-wave radiation [2]_. Future + updates may include parsing of additional data and meta-data. + + Required username and password are easily obtainable by writing an email to + Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow + BSRN's Data Release Guidelines [4]_. + + + Parameters + ---------- + filename: str + A relative or absolute file path. + + Returns + ------- + data: Dataframe + A Dataframe with the columns as described below. For more extensive + description of the variables, consult [2]_. + + Notes + ----- + The data Dataframe includes the following fields: + + ======================= ====== ========================================== + Key Format Description + ======================= ====== ========================================== + day int Day of the month 1-31 + minute int Minute of the day 0-1439 + ghi float Mean global horizontal irradiance [W/m^2] + ghi_std float Std. global horizontal irradiance [W/m^2] + ghi_min float Min. global horizontal irradiance [W/m^2] + ghi_max float Max. global horizontal irradiance [W/m^2] + dni float Mean direct normal irradiance [W/m^2] + dni_std float Std. direct normal irradiance [W/m^2] + dni_min float Min. direct normal irradiance [W/m^2] + dni_max float Max. direct normal irradiance [W/m^2] + dhi float Mean diffuse horizontal irradiance [W/m^2] + dhi_std float Std. diffuse horizontal irradiance [W/m^2] + dhi_min float Min. diffuse horizontal irradiance [W/m^2] + dhi_max float Max. diffuse horizontal irradiance [W/m^2] + lwd float Mean. downward long-wave radiation [W/m^2] + lwd_std float Std. downward long-wave radiation [W/m^2] + lwd_min float Min. downward long-wave radiation [W/m^2] + lwd_max float Max. downward long-wave radiation [W/m^2] + air_temperature float Air temperature [°C] + relative_humidity float Relative humidity [%] + pressure float Atmospheric pressure [hPa] + ======================= ====== ========================================== + + References + ---------- + .. [1] `World Radiation Monitoring Center - Baseline Surface Radiation Network (BSRN) + `BSRN homepage `_ + .. [2] `Update of the Technical Plan for BSRN Data Management, October 2013, + Global Climate Observing System (GCOS) GCOS-172. + `_ + .. [3] `BSRN Data Retrieval via FTP + `_ + .. [4] `BSRN Data Release Guidelines + `_ + """ + + + # Read file and store the starting line number for each each logical record (LR) + line_no_dict = {} + if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file + with gzip.open(filename,'rt') as f: + for num, line in enumerate(f): + if line.startswith('*'): # Find start of all logical records + line_no_dict[line[2:6]] = num # key is 4 digit LR number + + else: + with open(filename, 'r') as f: + for num, line in enumerate(f): + if line.startswith('*'): # Find start of all logical records + line_no_dict[line[2:6]] = num + + # Determine start and end line of logical recrod 0100 to be parsed + start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) + if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record + end_row = num # then parse rest of the file + else: # otherwise parse until the beginning of the next logical record + end_row = min([i for i in line_no_dict.values() if i>start_row]) + nrows = end_row-start_row + + # Read file as a fixed width file (fwf) + data = pd.read_fwf(filename, skiprows=start_row, nrows=nrows, header=None, + colspecs=COL_SPECS, na_values=[-999.0,-99.9]) + + # Assign multi-index and unstack DataFrame, such that each variable has a seperate column + data = data.set_index([data.index//2, data.index%2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') + + # Sort columns to match original order and assign column names + data = data.reindex(sorted(data.columns), axis='columns') + data.columns = BSRN_COLUMNS + + # Change day and minute type to integer and drop empty columns + data['day'] = data['day'].astype('Int64') + data['minute'] = data['minute'].astype('Int64') + data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') + + # Set datetime index and localize to UTC + basename = os.path.basename(filename) # get month and year from filename + data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') + + try: + data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC + except TypeError: + pass + + return data + + \ No newline at end of file From 7a437c39714ff3d06ba8646cfd2d3f031afea093 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sat, 16 Jan 2021 23:04:48 +0100 Subject: [PATCH 03/54] Simplified selection of rows in read_bsrn --- pvlib/iotools/bsrn.py | 93 +++++++++++++++++-------------------------- 1 file changed, 37 insertions(+), 56 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 7c9ceda35b..0c51b9eb20 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -2,11 +2,21 @@ .. codeauthor:: Adam R. Jensen """ -import gzip -from collections import OrderedDict import pandas as pd +import gzip import os +COL_SPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), + (46,50),(51,55),(56,64),(65,70),(71,75)] + +BSRN_COLUMNS = ['day','minute', + 'ghi','ghi_std','ghi_min','ghi_max', + 'dni','dni_std','dni_min','dni_max', + 'empty0','empty1','empty2','empty3','empty4', + 'dhi','dhi_std','dhi_min','dhi_max', + 'lwd','lwd_std','lwd_min','lwd_max', + 'air_temperature','relative_humidity','pressure'] + def read_bsrn(filename): """ @@ -30,28 +40,12 @@ def read_bsrn(filename): Returns ------- - Tuple of the form (data, metadata). - data: Dataframe A Dataframe with the columns as described below. For more extensive description of the variables, consult [2]_. - - metadata: dict - Site metadata included in the file. Notes ----- - Metadata dictionary includes the following fields: - - =============== ====== =============== - Key Format Description - =============== ====== =============== - station String site name - latitude Float site latitude - longitude Float site longitude - elevation Int site elevation - =============== ====== =============== - The data Dataframe includes the following fields: ======================= ====== ========================================== @@ -91,69 +85,56 @@ def read_bsrn(filename): `_ .. [4] `BSRN Data Release Guidelines `_ - - - """ - # Read file and store the starting line number for each each section - line_no_dict = OrderedDict() - if str(filename).endswith('.gz'): # if file is a gzipped (.gz) file + + # Read file and store the starting line number for each each logical record (LR) + line_no_dict = {} + if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file with gzip.open(filename,'rt') as f: for num, line in enumerate(f): - if ('*U' in line) or ('*C' in line): - line_no_dict[line.splitlines()[0]] = num + if line.startswith('*'): # Find start of all logical records + line_no_dict[line[2:6]] = num # key is 4 digit LR number + else: with open(filename, 'r') as f: for num, line in enumerate(f): - if ('*U' in line) or ('*C' in line): - line_no_dict[line.splitlines()[0]] = num - - # Get line numbers for the data set - line_no_dict_keys = list(line_no_dict.keys()) - data_id = [k for k in line_no_dict_keys if ('*C0100' in k) or ('*U0100' in k)][0] # tag for start of data sets, either *C0100 or *U0100 - start_row = line_no_dict[data_id] + 1 # First line number of data - if data_id == line_no_dict_keys[-1]: # check if the dataset is the last dataset - end_row = num - else: - end_row = line_no_dict[line_no_dict_keys[line_no_dict_keys.index(data_id)+1]] # Last line number of data # should there be -1? + if line.startswith('*'): # Find start of all logical records + line_no_dict[line[2:6]] = num + + # Determine start and end line of logical recrod 0100 to be parsed + start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) + if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record + end_row = num # then parse rest of the file + else: # otherwise parse until the beginning of the next logical record + end_row = min([i for i in line_no_dict.values() if i>start_row]) nrows = end_row-start_row # Read file as a fixed width file (fwf) - COLSPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), - (46,50),(51,55),(56,64),(65,70),(71,75)] data = pd.read_fwf(filename, skiprows=start_row, nrows=nrows, header=None, - colspecs=COLSPECS, na_values=[-999.0, -99.9]) - + colspecs=COL_SPECS, na_values=[-999.0,-99.9]) + # Assign multi-index and unstack DataFrame, such that each variable has a seperate column data = data.set_index([data.index//2, data.index%2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') - + # Sort columns to match original order and assign column names data = data.reindex(sorted(data.columns), axis='columns') - BSRN_COLUMNS = ['day','minute', - 'ghi','ghi_std','ghi_min','ghi_max', - 'dni','dni_std','dni_min','dni_max','empty0','empty1','empty2','empty3','empty4', - 'dhi','dhi_std','dhi_min','dhi_max', - 'lwd','lwd_std','lwd_min','lwd_max', - 'air_temperature','relative_humidity','pressure'] data.columns = BSRN_COLUMNS - + # Change day and minute type to integer and drop empty columns data['day'] = data['day'].astype('Int64') data['minute'] = data['minute'].astype('Int64') data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') # Set datetime index and localize to UTC - basename = os.path.basename(filename) + basename = os.path.basename(filename) # get month and year from filename data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') - - + try: data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC except TypeError: pass - # Sort index and add missing timesteps - ##data = data.sort_index().asfreq('1min') # can cause problems with duplicate time stamps - meta = {} - return data, meta \ No newline at end of file + return data + + From 93b92c8aca887d3a32af35d049ec915553b938d1 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sat, 16 Jan 2021 23:12:03 +0100 Subject: [PATCH 04/54] Added read_bsrn to api.rst --- docs/sphinx/source/api.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/sphinx/source/api.rst b/docs/sphinx/source/api.rst index f043894ee6..791f6be2f6 100644 --- a/docs/sphinx/source/api.rst +++ b/docs/sphinx/source/api.rst @@ -482,6 +482,7 @@ relevant to solar energy modeling. iotools.parse_psm3 iotools.get_pvgis_tmy iotools.read_pvgis_tmy + iotools.read_bsrn A :py:class:`~pvlib.location.Location` object may be created from metadata in some files. From c6447a3da5d2413dc4a9b2c9e725d58a3c718f29 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sun, 24 Jan 2021 20:14:08 +0100 Subject: [PATCH 05/54] Delete 2021_01_16_read_bsrn_pull_request_v2.py --- .../2021_01_16_read_bsrn_pull_request_v2.py | 146 ------------------ 1 file changed, 146 deletions(-) delete mode 100644 pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py diff --git a/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py b/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py deleted file mode 100644 index c7a700b26b..0000000000 --- a/pvlib/iotools/2021_01_16_read_bsrn_pull_request_v2.py +++ /dev/null @@ -1,146 +0,0 @@ -"""Functions to read data from the Baseline Surface Radiation Network (BSRN). -.. codeauthor:: Adam R. Jensen -""" - -import pandas as pd -import gzip -import os - - -"""Functions to read data from the Baseline Surface Radiation Network (BSRN). -.. codeauthor:: Adam R. Jensen -""" - - -COL_SPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), - (46,50),(51,55),(56,64),(65,70),(71,75)] - -BSRN_COLUMNS = ['day','minute', - 'ghi','ghi_std','ghi_min','ghi_max', - 'dni','dni_std','dni_min','dni_max', - 'empty0','empty1','empty2','empty3','empty4', - 'dhi','dhi_std','dhi_min','dhi_max', - 'lwd','lwd_std','lwd_min','lwd_max', - 'air_temperature','relative_humidity','pressure'] - - -def read_bsrn(filename): - """ - Read a BSRN station-to-archive file into a DataFrame. - - The BSRN (Baseline Surface Radiation Network) is a world wide network - of high-quality solar radiation monitoring stations as described in [1]_. - The function only parses the basic measurements (LR0100), which include - global, diffuse, direct and downwelling long-wave radiation [2]_. Future - updates may include parsing of additional data and meta-data. - - Required username and password are easily obtainable by writing an email to - Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow - BSRN's Data Release Guidelines [4]_. - - - Parameters - ---------- - filename: str - A relative or absolute file path. - - Returns - ------- - data: Dataframe - A Dataframe with the columns as described below. For more extensive - description of the variables, consult [2]_. - - Notes - ----- - The data Dataframe includes the following fields: - - ======================= ====== ========================================== - Key Format Description - ======================= ====== ========================================== - day int Day of the month 1-31 - minute int Minute of the day 0-1439 - ghi float Mean global horizontal irradiance [W/m^2] - ghi_std float Std. global horizontal irradiance [W/m^2] - ghi_min float Min. global horizontal irradiance [W/m^2] - ghi_max float Max. global horizontal irradiance [W/m^2] - dni float Mean direct normal irradiance [W/m^2] - dni_std float Std. direct normal irradiance [W/m^2] - dni_min float Min. direct normal irradiance [W/m^2] - dni_max float Max. direct normal irradiance [W/m^2] - dhi float Mean diffuse horizontal irradiance [W/m^2] - dhi_std float Std. diffuse horizontal irradiance [W/m^2] - dhi_min float Min. diffuse horizontal irradiance [W/m^2] - dhi_max float Max. diffuse horizontal irradiance [W/m^2] - lwd float Mean. downward long-wave radiation [W/m^2] - lwd_std float Std. downward long-wave radiation [W/m^2] - lwd_min float Min. downward long-wave radiation [W/m^2] - lwd_max float Max. downward long-wave radiation [W/m^2] - air_temperature float Air temperature [°C] - relative_humidity float Relative humidity [%] - pressure float Atmospheric pressure [hPa] - ======================= ====== ========================================== - - References - ---------- - .. [1] `World Radiation Monitoring Center - Baseline Surface Radiation Network (BSRN) - `BSRN homepage `_ - .. [2] `Update of the Technical Plan for BSRN Data Management, October 2013, - Global Climate Observing System (GCOS) GCOS-172. - `_ - .. [3] `BSRN Data Retrieval via FTP - `_ - .. [4] `BSRN Data Release Guidelines - `_ - """ - - - # Read file and store the starting line number for each each logical record (LR) - line_no_dict = {} - if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file - with gzip.open(filename,'rt') as f: - for num, line in enumerate(f): - if line.startswith('*'): # Find start of all logical records - line_no_dict[line[2:6]] = num # key is 4 digit LR number - - else: - with open(filename, 'r') as f: - for num, line in enumerate(f): - if line.startswith('*'): # Find start of all logical records - line_no_dict[line[2:6]] = num - - # Determine start and end line of logical recrod 0100 to be parsed - start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) - if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record - end_row = num # then parse rest of the file - else: # otherwise parse until the beginning of the next logical record - end_row = min([i for i in line_no_dict.values() if i>start_row]) - nrows = end_row-start_row - - # Read file as a fixed width file (fwf) - data = pd.read_fwf(filename, skiprows=start_row, nrows=nrows, header=None, - colspecs=COL_SPECS, na_values=[-999.0,-99.9]) - - # Assign multi-index and unstack DataFrame, such that each variable has a seperate column - data = data.set_index([data.index//2, data.index%2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') - - # Sort columns to match original order and assign column names - data = data.reindex(sorted(data.columns), axis='columns') - data.columns = BSRN_COLUMNS - - # Change day and minute type to integer and drop empty columns - data['day'] = data['day'].astype('Int64') - data['minute'] = data['minute'].astype('Int64') - data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') - - # Set datetime index and localize to UTC - basename = os.path.basename(filename) # get month and year from filename - data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') - - try: - data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC - except TypeError: - pass - - return data - - \ No newline at end of file From 52a952aaa101f5519c719ca8ae688943eeb3a247 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sun, 24 Jan 2021 20:18:41 +0100 Subject: [PATCH 06/54] Improved format, e.g removed trailing white spaces --- pvlib/iotools/bsrn.py | 64 ++++++++++++++++++++----------------------- 1 file changed, 30 insertions(+), 34 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 0c51b9eb20..5e80052b05 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -6,44 +6,44 @@ import gzip import os -COL_SPECS = [(0,3),(4,9),(10,16),(17,22),(23,27),(28,32),(33,39),(40,45), - (46,50),(51,55),(56,64),(65,70),(71,75)] +COL_SPECS = [(0,3), (4,9), (10,16), (17,22), (23,27), (28,32), (33,39), + (40,45), (46,50), (51,55), (56,64), (65,70), (71,75)] -BSRN_COLUMNS = ['day','minute', - 'ghi','ghi_std','ghi_min','ghi_max', - 'dni','dni_std','dni_min','dni_max', - 'empty0','empty1','empty2','empty3','empty4', - 'dhi','dhi_std','dhi_min','dhi_max', - 'lwd','lwd_std','lwd_min','lwd_max', - 'air_temperature','relative_humidity','pressure'] +BSRN_COLUMNS = ['day', 'minute', + 'ghi', 'ghi_std', 'ghi_min', 'ghi_max', + 'dni', 'dni_std', 'dni_min', 'dni_max', + 'empty0', 'empty1', 'empty2', 'empty3', 'empty4', + 'dhi', 'dhi_std', 'dhi_min', 'dhi_max', + 'lwd', 'lwd_std', 'lwd_min', 'lwd_max', + 'air_temperature', 'relative_humidity', 'pressure'] def read_bsrn(filename): """ - Read a BSRN station-to-archive file into a DataFrame. - - The BSRN (Baseline Surface Radiation Network) is a world wide network + Read a BSRN station-to-archive file into a DataFrame. + + The BSRN (Baseline Surface Radiation Network) is a world wide network of high-quality solar radiation monitoring stations as described in [1]_. The function only parses the basic measurements (LR0100), which include global, diffuse, direct and downwelling long-wave radiation [2]_. Future updates may include parsing of additional data and meta-data. - + Required username and password are easily obtainable by writing an email to - Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow + Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow BSRN's Data Release Guidelines [4]_. - + Parameters ---------- filename: str A relative or absolute file path. - + Returns ------- data: Dataframe A Dataframe with the columns as described below. For more extensive description of the variables, consult [2]_. - + Notes ----- The data Dataframe includes the following fields: @@ -81,33 +81,31 @@ def read_bsrn(filename): .. [2] `Update of the Technical Plan for BSRN Data Management, October 2013, Global Climate Observing System (GCOS) GCOS-172. `_ - .. [3] `BSRN Data Retrieval via FTP + .. [3] `BSRN Data Retrieval via FTP `_ .. [4] `BSRN Data Release Guidelines `_ """ - - + # Read file and store the starting line number for each each logical record (LR) line_no_dict = {} - if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file + if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file with gzip.open(filename,'rt') as f: for num, line in enumerate(f): - if line.startswith('*'): # Find start of all logical records - line_no_dict[line[2:6]] = num # key is 4 digit LR number - + if line.startswith('*'): # Find start of all logical records + line_no_dict[line[2:6]] = num # key is 4 digit LR number else: with open(filename, 'r') as f: for num, line in enumerate(f): - if line.startswith('*'): # Find start of all logical records + if line.startswith('*'): # Find start of all logical records line_no_dict[line[2:6]] = num # Determine start and end line of logical recrod 0100 to be parsed - start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) - if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record - end_row = num # then parse rest of the file - else: # otherwise parse until the beginning of the next logical record - end_row = min([i for i in line_no_dict.values() if i>start_row]) + start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) + if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record + end_row = num # then parse rest of the file + else: # otherwise parse until the beginning of the next logical record + end_row = min([i for i in line_no_dict.values() if i > start_row]) nrows = end_row-start_row # Read file as a fixed width file (fwf) @@ -127,14 +125,12 @@ def read_bsrn(filename): data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') # Set datetime index and localize to UTC - basename = os.path.basename(filename) # get month and year from filename + basename = os.path.basename(filename) # get month and year from filename data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') try: - data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC + data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC except TypeError: pass return data - - From 870095aa36bd62e7f8d2181130b103e6dab78e06 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sun, 24 Jan 2021 20:22:16 +0100 Subject: [PATCH 07/54] Fixed spacing issues --- pvlib/iotools/bsrn.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 5e80052b05..de00e57ccf 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -90,7 +90,7 @@ def read_bsrn(filename): # Read file and store the starting line number for each each logical record (LR) line_no_dict = {} if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file - with gzip.open(filename,'rt') as f: + with gzip.open(filename, 'rt') as f: for num, line in enumerate(f): if line.startswith('*'): # Find start of all logical records line_no_dict[line[2:6]] = num # key is 4 digit LR number @@ -113,7 +113,7 @@ def read_bsrn(filename): colspecs=COL_SPECS, na_values=[-999.0,-99.9]) # Assign multi-index and unstack DataFrame, such that each variable has a seperate column - data = data.set_index([data.index//2, data.index%2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') + data = data.set_index([data.index // 2, data.index % 2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') # Sort columns to match original order and assign column names data = data.reindex(sorted(data.columns), axis='columns') From 444e9791d07021f222a6b06530df3ab6d154198d Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Sun, 24 Jan 2021 20:35:25 +0100 Subject: [PATCH 08/54] Update v0.9.0.rst --- docs/sphinx/source/whatsnew/v0.9.0.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/sphinx/source/whatsnew/v0.9.0.rst b/docs/sphinx/source/whatsnew/v0.9.0.rst index 1094973bd5..2f0e34a3f9 100644 --- a/docs/sphinx/source/whatsnew/v0.9.0.rst +++ b/docs/sphinx/source/whatsnew/v0.9.0.rst @@ -27,6 +27,8 @@ Deprecations Enhancements ~~~~~~~~~~~~ +* Add :func:`~pvlib.iotools.read_bsrn` for reading BSRN solar radiation data + files. (:pull:`1145`, :issue:`1015`) * In :py:class:`~pvlib.modelchain.ModelChain`, attributes which contain output of models are now collected into ``ModelChain.results``. (:pull:`1076`, :issue:`1067`) @@ -73,3 +75,4 @@ Contributors * Mark Mikofski (:ghuser:`mikofski`) * Nate Croft (:ghuser:`ncroft-b4`) * Kevin Anderson (:ghuser:`kanderso-nrel`) +* Adam R. Jensen (:ghuser:`AdamRJensen`) From f11288e77c2d0ccb23b5ed747a068de5f0780759 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 25 Jan 2021 20:38:44 +0100 Subject: [PATCH 09/54] Add iotools.bsrn and import read_bsrn --- pvlib/iotools/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pvlib/iotools/__init__.py b/pvlib/iotools/__init__.py index c8c7349527..ba5d5e8807 100644 --- a/pvlib/iotools/__init__.py +++ b/pvlib/iotools/__init__.py @@ -13,3 +13,4 @@ from pvlib.iotools.psm3 import read_psm3 # noqa: F401 from pvlib.iotools.psm3 import parse_psm3 # noqa: F401 from pvlib.iotools.pvgis import get_pvgis_tmy, read_pvgis_tmy # noqa: F401 +from pvlib.iotools.bsrn import read_bsrn # noqa: F401 From 2fc95ad7d283c31962c7407e934fc5bffc4e120d Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 25 Jan 2021 21:13:34 +0100 Subject: [PATCH 10/54] Split multiple lines to obey 75 character limit --- pvlib/iotools/bsrn.py | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index de00e57ccf..304a6cae2f 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -6,13 +6,13 @@ import gzip import os -COL_SPECS = [(0,3), (4,9), (10,16), (17,22), (23,27), (28,32), (33,39), - (40,45), (46,50), (51,55), (56,64), (65,70), (71,75)] +COL_SPECS = [(0, 3), (4, 9), (10, 16), (17, 22), (23, 27), (28, 32), (33, 39), + (40, 45), (46, 50), (51, 55), (56, 64), (65, 70), (71, 75)] BSRN_COLUMNS = ['day', 'minute', 'ghi', 'ghi_std', 'ghi_min', 'ghi_max', 'dni', 'dni_std', 'dni_min', 'dni_max', - 'empty0', 'empty1', 'empty2', 'empty3', 'empty4', + 'empty', 'empty', 'empty', 'empty', 'empty', 'dhi', 'dhi_std', 'dhi_min', 'dhi_max', 'lwd', 'lwd_std', 'lwd_min', 'lwd_max', 'air_temperature', 'relative_humidity', 'pressure'] @@ -87,7 +87,7 @@ def read_bsrn(filename): `_ """ - # Read file and store the starting line number for each each logical record (LR) + # Read file and store the starting line number for each logical record (LR) line_no_dict = {} if str(filename).endswith('.gz'): # check if file is a gzipped (.gz) file with gzip.open(filename, 'rt') as f: @@ -100,9 +100,10 @@ def read_bsrn(filename): if line.startswith('*'): # Find start of all logical records line_no_dict[line[2:6]] = num - # Determine start and end line of logical recrod 0100 to be parsed - start_row = line_no_dict['0100'] + 1 # Start line number of the data (LR0100) - if start_row-1 == max(line_no_dict.values()): # If LR0100 is the last logical record + # Determine start and end line of logical record LR0100 to be parsed + start_row = line_no_dict['0100'] + 1 # Start line number + # If LR0100 is the last logical record, then read rest of file + if start_row-1 == max(line_no_dict.values()): end_row = num # then parse rest of the file else: # otherwise parse until the beginning of the next logical record end_row = min([i for i in line_no_dict.values() if i > start_row]) @@ -110,26 +111,30 @@ def read_bsrn(filename): # Read file as a fixed width file (fwf) data = pd.read_fwf(filename, skiprows=start_row, nrows=nrows, header=None, - colspecs=COL_SPECS, na_values=[-999.0,-99.9]) + colspecs=COL_SPECS, na_values=[-999.0, -99.9]) - # Assign multi-index and unstack DataFrame, such that each variable has a seperate column - data = data.set_index([data.index // 2, data.index % 2]).unstack(level=1).swaplevel(i=0, j=1, axis='columns') + # Create multi-index and unstack, resulting in one column for each variable + data = data.set_index([data.index // 2, data.index % 2]) + data = data.unstack(level=1).swaplevel(i=0, j=1, axis='columns') # Sort columns to match original order and assign column names data = data.reindex(sorted(data.columns), axis='columns') data.columns = BSRN_COLUMNS + # Drop empty columns + data = data.drop('empty', axis='columns') - # Change day and minute type to integer and drop empty columns + # Change day and minute type to integer data['day'] = data['day'].astype('Int64') data['minute'] = data['minute'].astype('Int64') - data = data.drop(['empty0','empty1','empty2','empty3','empty4'], axis='columns') # Set datetime index and localize to UTC basename = os.path.basename(filename) # get month and year from filename - data.index = pd.to_datetime(basename[3:7], format='%m%y') + pd.to_timedelta(data['day']-1, unit='d') + pd.to_timedelta(data['minute'], unit='min') + start_date = pd.to_datetime(basename[3:7], format='%m%y') + data.index = start_date + pd.to_timedelta(data['day']-1, unit='d') + \ + pd.to_timedelta(data['minute'], unit='min') try: - data.index = data.index.tz_localize('UTC') # all BSRN timestamps are in UTC + data.index = data.index.tz_localize('UTC') # BSRN timestamps are UTC except TypeError: pass From 656bbdaf04b48f8c7155442a0a0ad30c1ff896f4 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 25 Jan 2021 21:21:33 +0100 Subject: [PATCH 11/54] Corrected indentation --- pvlib/iotools/bsrn.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 304a6cae2f..08834d06a0 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -76,9 +76,9 @@ def read_bsrn(filename): References ---------- - .. [1] `World Radiation Monitoring Center - Baseline Surface Radiation Network (BSRN) - `BSRN homepage `_ - .. [2] `Update of the Technical Plan for BSRN Data Management, October 2013, + .. [1] `World Radiation Monitoring Center - Baseline Surface Radiation + Network (BSRN) `BSRN homepage `_ + .. [2] `Update of the Technical Plan for BSRN Data Management, 2013, Global Climate Observing System (GCOS) GCOS-172. `_ .. [3] `BSRN Data Retrieval via FTP @@ -129,9 +129,9 @@ def read_bsrn(filename): # Set datetime index and localize to UTC basename = os.path.basename(filename) # get month and year from filename - start_date = pd.to_datetime(basename[3:7], format='%m%y') - data.index = start_date + pd.to_timedelta(data['day']-1, unit='d') + \ - pd.to_timedelta(data['minute'], unit='min') + data.index = pd.to_datetime(basename[3:7], format='%m%y') \ + + pd.to_timedelta(data['day']-1, unit='d') \ + + pd.to_timedelta(data['minute'], unit='min') try: data.index = data.index.tz_localize('UTC') # BSRN timestamps are UTC From c10d75bbb6c6d210f219424a7f9e521e9e062f9d Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 25 Jan 2021 21:23:56 +0100 Subject: [PATCH 12/54] Fixed indentation again --- pvlib/iotools/bsrn.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 08834d06a0..e92b3b2d30 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -129,9 +129,9 @@ def read_bsrn(filename): # Set datetime index and localize to UTC basename = os.path.basename(filename) # get month and year from filename - data.index = pd.to_datetime(basename[3:7], format='%m%y') \ - + pd.to_timedelta(data['day']-1, unit='d') \ - + pd.to_timedelta(data['minute'], unit='min') + data.index = (pd.to_datetime(basename[3:7], format='%m%y') + + pd.to_timedelta(data['day']-1, unit='d') + + pd.to_timedelta(data['minute'], unit='min')) try: data.index = data.index.tz_localize('UTC') # BSRN timestamps are UTC From d16d93574b72045ccf0423db904758a8a4afb8ad Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 1 Feb 2021 22:18:47 +0100 Subject: [PATCH 13/54] Remove bsrn email in description Co-authored-by: Cliff Hansen --- pvlib/iotools/bsrn.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index e92b3b2d30..a043443650 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -28,11 +28,11 @@ def read_bsrn(filename): global, diffuse, direct and downwelling long-wave radiation [2]_. Future updates may include parsing of additional data and meta-data. - Required username and password are easily obtainable by writing an email to - Amelie Driemel (Amelie.Driemel@awi.de) [3]_ on condition that users follow + Required username and password are easily obtainable as described in the BSRN's Data Release Guidelines [4]_. + Parameters ---------- filename: str From 86cfb17d0509ecb74b4b355e7d25bfab913fbb53 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 1 Feb 2021 23:36:07 +0100 Subject: [PATCH 14/54] Correct COL_SPEC variable The previous values in the COL_SPEC variables were not all correct, leading to incorrect parsing of the data. --- pvlib/iotools/bsrn.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index a043443650..ca9ad2f37a 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -6,8 +6,8 @@ import gzip import os -COL_SPECS = [(0, 3), (4, 9), (10, 16), (17, 22), (23, 27), (28, 32), (33, 39), - (40, 45), (46, 50), (51, 55), (56, 64), (65, 70), (71, 75)] +COL_SPECS = [(0, 3), (4, 9), (10, 16), (16, 22), (22, 27), (27, 32), (32, 39), + (39, 45), (45, 50), (50, 55), (55, 64), (64, 70), (70, 75)] BSRN_COLUMNS = ['day', 'minute', 'ghi', 'ghi_std', 'ghi_min', 'ghi_max', From 2eb3d4480fd55ba762a9fce94a792b76112f25f6 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Tue, 2 Feb 2021 10:46:32 +0100 Subject: [PATCH 15/54] Changed air_temperature to temp_air --- pvlib/iotools/bsrn.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index ca9ad2f37a..08e1a8b441 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -15,7 +15,7 @@ 'empty', 'empty', 'empty', 'empty', 'empty', 'dhi', 'dhi_std', 'dhi_min', 'dhi_max', 'lwd', 'lwd_std', 'lwd_min', 'lwd_max', - 'air_temperature', 'relative_humidity', 'pressure'] + 'temp_air', 'relative_humidity', 'pressure'] def read_bsrn(filename): From 3218ab5117aceb2ccf3c2f3291a77d5124515e0b Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Tue, 2 Feb 2021 10:51:58 +0100 Subject: [PATCH 16/54] Add test_bsrn file File is not complete, as I'm awaiting permission from BSRN to upload test file --- pvlib/tests/iotools/test_bsrn.py | 34 ++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 pvlib/tests/iotools/test_bsrn.py diff --git a/pvlib/tests/iotools/test_bsrn.py b/pvlib/tests/iotools/test_bsrn.py new file mode 100644 index 0000000000..ac6e778b6b --- /dev/null +++ b/pvlib/tests/iotools/test_bsrn.py @@ -0,0 +1,34 @@ +""" +tests for :mod:`pvlib.iotools.bsrn` +""" + + +import pandas as pd +import pytest + +from pvlib.iotools import bsrn +from conftest import DATA_DIR + + +# Awaiting permission from BSRN to upload test file +testfile = DATA_DIR / 'bsrn_xxxxx.dat' + + +def test_read_bsrn_columns(): + data = bsrn.read_bsrn(testfile) + assert 'ghi' in data.columns + assert 'dni_std' in data.columns + assert 'dhi_min' in data.columns + assert 'lwd_max' in data.columns + assert 'relative_humidity' in data.columns + + +@pytest.fixture +def expected_index(): + start = pd.Timestamp(2020,1,1,0,0) + return pd.date_range(start=start, periods=1440, freq='1min', tz='UTC') + + +def test_format_index(): + actual = bsrn.read_bsrn(testfile) + assert actual.index.equals(expected_index) From ad8d45a23ffa2181ba056c69749d4bc114af97c1 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 8 Feb 2021 10:00:02 +0100 Subject: [PATCH 17/54] Reference to FTP updated --- pvlib/iotools/bsrn.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pvlib/iotools/bsrn.py b/pvlib/iotools/bsrn.py index 08e1a8b441..9fc0e7a13e 100644 --- a/pvlib/iotools/bsrn.py +++ b/pvlib/iotools/bsrn.py @@ -28,8 +28,9 @@ def read_bsrn(filename): global, diffuse, direct and downwelling long-wave radiation [2]_. Future updates may include parsing of additional data and meta-data. - Required username and password are easily obtainable as described in the - BSRN's Data Release Guidelines [4]_. + BSRN files are freely avaiable and can be accessed via FTP [3]_. Required + username and password are easily obtainable as described in the BSRN's + Data Release Guidelines [4]_. From fe632b8b9718d82790aec2ef97fddc6138e0ca95 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Tue, 9 Feb 2021 16:01:36 +0100 Subject: [PATCH 18/54] Add zipped bsrn test file --- pvlib/data/bsrn-pay0616.dat.gz | Bin 0 -> 4327505 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 pvlib/data/bsrn-pay0616.dat.gz diff --git a/pvlib/data/bsrn-pay0616.dat.gz b/pvlib/data/bsrn-pay0616.dat.gz new file mode 100644 index 0000000000000000000000000000000000000000..7fc46102fae1bcaf9679a25d66ffaa3ea064c966 GIT binary patch literal 4327505 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%0AJ) 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 z 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

+wcps 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