Client for 'NASA' 'POWER' global meteorology, surface solar energy and climatology data 'API'. 'POWER' (Prediction Of Worldwide Energy Resource) data are freely available global meteorology and surface solar energy climatology data for download with a resolution of 1/2 by 1/2 arc degree longitude and latitude and are funded through the 'NASA' Earth Science Directorate Applied Science Program. For more on the data themselves, a web-based data viewer and web access, please see < https://power.larc.nasa.gov/>.
nasapower aims to make it quick and easy to automate downloading
NASA-POWER global meteorology, surface
solar energy and climatology data in your R session as a tidy data frame
tibble
object for analysis and use in modelling or other purposes.
POWER (Prediction Of Worldwide Energy Resource) data are freely
available for download at a resolution of 1/2 arc degree longitude by
1/2 arc degree latitude.
nasapower offers further functionality to quickly and easily generate
an APSIM
package metFile
format text file from POWER data for use in the Agricultural Production
Systems sIMulator (APSIM) or an ICASA format
text files for use in Decision Support System for Agrotechnology
Transfer (DSSAT).
Please see https://power.larc.nasa.gov/ for more on the data and other ways to access it and other forms of data available, e.g., your web browser or an ESRI REST API.
nasapower can easily be installed using the following code.
The stable version is available through CRAN.
install.packages("nasapower")
A development version that may have new features or bug fixes is available through GitHub.
if (!require(remotes)) {install.packages("remotes")}remotes::install_github("ropensci/nasapower",build_vignettes = TRUE)
Fetch daily “AG” community temperature, relative humidity and precipitation for January 1 1985 for Kingsthorpe, Queensland, Australia.
library(nasapower)daily_ag <- get_power(community = "AG",lonlat = c(151.81, -27.48),pars = c("RH2M", "T2M", "PRECTOT"),dates = "1985-01-01",temporal_average = "DAILY")daily_ag#> NASA/POWER SRB/FLASHFlux/MERRA2/GEOS 5.12.4 (FP-IT) 0.5 x 0.5 Degree Daily Averaged Data#> Dates (month/day/year): 01/01/1985 through 01/01/1985#> Location: Latitude -27.48 Longitude 151.81#> Elevation from MERRA-2: Average for 1/2x1/2 degree lat/lon region = 434.55 meters Site = na#> Climate zone: na (reference Briggs et al: http://www.energycodes.gov)#> Value for missing model data cannot be computed or out of model availability range: -99#>#> Parameters:#> PRECTOT MERRA2 1/2x1/2 Precipitation (mm day-1) ;#> RH2M MERRA2 1/2x1/2 Relative Humidity at 2 Meters (%) ;#> T2M MERRA2 1/2x1/2 Temperature at 2 Meters (C)#>#> # A tibble: 1 x 10#> LON LAT YEAR MM DD DOY YYYYMMDD RH2M T2M PRECTOT#> <dbl> <dbl> <dbl> <int> <int> <int> <date> <dbl> <dbl> <dbl>#> 1 152. -27.5 1985 1 1 1 1985-01-01 48.9 25.1 1.07
More documentation is available in the vignette in your R session,
vignette("nasapower")
or available online,
https://ropensci.github.io/nasapower/articles/nasapower.html.
While nasapower does not redistribute the data or provide it in any way, we encourage users to follow the requests of the POWER Project Team.
following acknowledgement be included: “These data were obtained from the NASA Langley Research Center POWER Project funded through the NASA Earth Science Directorate Applied Science Program.”
Please report any issues or bugs.
License: MIT
Get citation information for nasapower in R by typing
citation(package = "nasapower")
.
Please note that the nasapower project is released with a Contributor Code of Conduct. By participating in the nasapower project you agree to abide by its terms.
The U.S. Earth System Research Laboratory, Physical Science Division of the National Atmospheric & Oceanic Administration (NOAA) maintains a list of gridded climate data sets that provide different data and different resolutions https://www.esrl.noaa.gov/psd/data/gridded/.
https://power.larc.nasa.gov/documents/POWER_Data_v9_methodology.pdf
Fix issues reported at https://cloud.r-project.org//web/checks/check_results_nasapower.html with failing tests. These tests should be skipped on CRAN but were not.
Fixes bug where missing values in POWER data were not properly replaced with
NA
in tibble
and metFile outputs
Fixes bug in documentation for create_icasa()
where the parameter for
file_out
was misidentified as just file
Fixes bug where .met files were not created properly including where "radn" and "rain" col headers were reversed
Fix Warning: Must pass a scalar integer as 'nrow' argument to 'new_tibble()'.
Fixes bug where "CLIMATE" could not be requested for a single point
GLOBAL
values are requested. This is now specified in lonlat
in conjunction with temporal_average = CLIMATOLOGY
.Adds example of fetching climate for a single point
Refactor code to split internal functions by functionality and add more complete test coverage
Removes internal check for data - community agreement, as all data is available for all communities, only the units change
Update links to latest documentation provided by the POWER team
nasapower
until the POWER team can properly address
how pre-query validation should be performedCorrects an instance where vignette example executed on CRAN but should not
Adds link to POWER website in error message when query fails
Documentation .Rd files are now more readable with better formatting
Flesh out examples using naspower
data with raster
to create spatial objects for systems with low-RAM where the functionality may not work as expected
Standardise formatting of vignette subheadings
Spell check vignette
Updates documentation examples
Provides nicer method of printing data in R console
Updates tests for better coverage and removes non-functional tests
Removes dplyr
as an Import
Corrects issue where if()
was called with a vector of length 2 or more
Corrects logical operators &&
and ||
where they should be &
or |
Removes extra code in create_icasa()
and create_met()
that performed
a duplicated check of latlon
values
Removes unnecessary checks for latlon
in get_power()
Provides corrections to documentation formatting as per CRAN volunteers' requests
Provides edits and clarifications in DESCRIPTION's Description and Title about the package's uses and capabilities
nasapower is now a part of rOpenSci after peer-review of the code!
Provides access to all three communities, AG, SSE and and SB, not just AG
Uses new 'POWER' 'API' to download new 1/2 x 1/2 degree data
Adds function get_power()
to get weather data and optionally metadata as
well
Adds function create_met()
to create 'APSIM' met objects from 'POWER' data
Adsd function create_icasa()
to create a text file of weather data for use
in 'DSSAT' crop modelling
Internally, replaces httr package with crul
get_cell
and get_region
functions are deprecated in favour of
get_power()
. The new POWER interface allows for the specification of single
points or regional areas. Global coverage may be queried for Climatology. See
the help for ?get_power()
for more details.MONTH
, DAY
and YYYY-MM-DD
were
incorrectly reported in final data frame. This did not affect the weather data,
YEAR
or DOY
columns.Fix bug where lon/lat values were improperly assigned internally due to row
names not being ordered correctly in get_region()
Fix bug reports link in DESCRIPTION file
Correct vignette where it had said, "both of which will which will download"
Correct documentation for get_region()
, which incorrectly stated that it
downloaded data for a 1 x 1 degree cell
Optimise arguments used in utils::read.table()
to ingest weather data in the
get_cell()
and get_region()
functions more quickly
NEWS now formatted more nicely for easier reading
Add statement about possible performance and memory usage when using
get_region()
in the vignette
Add an example of converting the data frame to a spatial object using
raster to create a raster::brick()
Specify in documentation that a range of days to years can be specified for download
get_region()
and get_cell()
now default to download all weather vars
Add a check to see if POWER website is responding before making request for data. If not, stop and return error message to user.
get_region()
with
multiple dates. https://github.com/ropensci/nasapower/issues/1Enhanced documentation
Superfluous function, .onLoad()
, removed from zzz.R
Tidied up startup message
Clean up vignette
Build vignette faster
Remove DATE from DESCRIPTION
Add new functionality to download regions in addition to single cells
Add static documentation website, https://ropensci.github.io/nasapower/
Add startup message
Added a NEWS.md
file to track changes to the package.
First release, no changes to report yet