Recent Releases of soilDB
soilDB - soilDB 2.8.13
soilDB 2.8.13 (2025-09-26)
- Added
get_SDA_NASIS_key()for obtaining NASIS record IDs for component and component horizon data from Soil Data Access (#409) SDA_spatialQuery()fixed a bug with newaddFieldsargument andgeomIntersection=TRUE(#414)get_OSD()replace old base URL forresult='html'SDA_query()include soilDB package version in User-Agent string- Vignette updates
- Validate
SDA_spatialQuerywhat and as_Spatial inputs (@jslatane #411) get_SDA_property()fixed a bug in SQL dialect syntax with local SQLitedsn
What's Changed
- fix:
get_SDA_property()SQLite dialect by @brownag in https://github.com/ncss-tech/soilDB/pull/408 - Validate
SDA_spatialQuerywhat and as_Spatial inputs by @jslatane in https://github.com/ncss-tech/soilDB/pull/411 - fix: get_OSD base url for
result='html'by @brownag in https://github.com/ncss-tech/soilDB/pull/413 - fix: SDA_spatialQuery: addFields with
geomIntersection=TRUEand feat* tables by @brownag in https://github.com/ncss-tech/soilDB/pull/414 - Add
get_SDA_NASIS_key()by @brownag in https://github.com/ncss-tech/soilDB/pull/409
New Contributors
- @jslatane made their first contribution in https://github.com/ncss-tech/soilDB/pull/411
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.12...2.8.13
Natural Resources - Soil and Land
- R
Published by brownag 5 months ago
soilDB - soilDB 2.8.12
soilDB 2.8.12 (2025-08-29)
- New Vignettes:
- Added vignette for thematic maps of dominant ecological site using Soil Data Access via
SDA_spatialQuery()andget_SDA_coecoclass() - Added vignette for creating and using local SSURGO databases via
downloadSSURGO()andcreateSSURGO()
- Added vignette for thematic maps of dominant ecological site using Soil Data Access via
SDA_spatialQuery()now supportsaddFieldsargument to add columns to the result from other non-spatial tables.- You can now specify columns from:
"legend","mapunit", and"muaggatt"tables forwhatequal to"mupolygon","mupoint","muline"or"mukey""legend"table forwhatequal to"areasymbol"or"sapolygon""featdesc"forwhatequal to"featpoint"or"featline"
- You can now specify columns from:
createSSURGO():- Added
appendargument to fixoverwritebehavior - Fixed bug in creating non-GeoPackage, non-spatial SQLite output
- Improved handling of empty export files and
overwritelogic for non-file-based RDBMS
- Added
fetchNASIS(): fixed bug whenfill=TRUEand there are no horizons in the source data for any profileget_component_from_SDA()fixed bug in join of"chorizon"and"chfrags"tables, now usesmerge(incomparables=NA)get_vegplot_tree_si_summary_from_NASIS_db()updated for newsiteindexcurvetable in NASIS data model version 7.4.3
What's Changed
createSSURGO()updates by @brownag in https://github.com/ncss-tech/soilDB/pull/401- SDA_spatialQuery: Add
addFieldsargument by @brownag in https://github.com/ncss-tech/soilDB/pull/405 - fixes for transition to new soilweb servers by @dylanbeaudette in https://github.com/ncss-tech/soilDB/pull/407
- Local SSURGO databases vignette by @brownag in https://github.com/ncss-tech/soilDB/pull/404
- SSURGO Dominant Ecological Site vignette by @brownag in https://github.com/ncss-tech/soilDB/pull/403
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.11...2.8.12
Natural Resources - Soil and Land
- R
Published by brownag 6 months ago
soilDB - soilDB 2.8.11
soilDB 2.8.11 (2025-07-10)
- Update to NASIS metadata for data model version 7.4.3
fetchSDA_spatial()geom.src="mlrapolygon"uses a new URL on the DSHub S3 bucket- Added
"projectsubtype"and"milestonetype"to the"project"set forget_NASIS_table_name_by_purpose() - Initial phase of syntax cleanup affecting many functions
soilDB 2.8.10 (2025-04-28)
fetchVegdata()addnullFragsAreZeroargument (passed toget_site_data_from_NASIS_db())- Added
soilDB_user_dir()for caching local copies of data for use in soilDB functions (#377) - Added
fetchHWSD()andget_HWSD_path()for the FAO Harmonized World Soil Database (#391) - Added
get_phroots_from_NASIS_db()for getting pedon horizon root information from NASIS (#393)
What's Changed
- Add
soilDB_user_dir()by @brownag in https://github.com/ncss-tech/soilDB/pull/392 fetchHWSD()for FAO Harmonized World Soil Database by @brownag in https://github.com/ncss-tech/soilDB/pull/391- Add
get_phroots_from_NASIS_db()for querying and formatting data from phroots table by @dylanbeaudette in https://github.com/ncss-tech/soilDB/pull/393 - Linting 1 by @brownag in https://github.com/ncss-tech/soilDB/pull/395
- Update NASIS metadata for data model v7.4.3 by @brownag in https://github.com/ncss-tech/soilDB/pull/396
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.9...2.8.11
Natural Resources - Soil and Land
- R
Published by brownag 7 months ago
soilDB - soilDB 2.8.9
soilDB 2.8.9 (2025-04-04)
- soilDB now requires aqp >= 2.1.0
- Added
get_vegplot_groundsurface_from_NASIS_db()thanks to Greg Schmidt (@phytoclast; #373) - Added
"transectgroundsurfcover"table to"vegetation"set forget_NASIS_table_name_by_purpose() - Added missing
fetchNASIS("components")deprecation messages for maat_l, maat_r, maat_h, mast_r, ecosite_id, ecosite_name, othervegid, and othervegclass columns fetchSDA_spatial(geom.src="mlrapolygon"): uses an AWS (S3) source and Seek-optimized ZIP file (thanks to @jneme910)get_SDA_property()(method"weighted average"and"min/max"),get_SDA_hydric(), andget_SDA_interpretation()(method"weighted average") now use Common Table Expressions (CTEs) and therefore are compatible with local (SQLite or other) data sources
What's Changed
- aqp usage cleanup by @brownag in https://github.com/ncss-tech/soilDB/pull/371
- deprecate
fetchSRI()and related low-level functions by @brownag in https://github.com/ncss-tech/soilDB/pull/372 - Vegplot Transect: Add support for Transect Ground Surface Cover by @brownag in https://github.com/ncss-tech/soilDB/pull/373
fetchSDA_spatial(geom.src="mlrapolygon"): use S3 source from @jneme910 by @brownag in https://github.com/ncss-tech/soilDB/pull/379- get_SDA_property: CTEs for SQLite compatibility and query readability by @brownag in https://github.com/ncss-tech/soilDB/pull/381
get_SDA_hydric(): use CTEs by @brownag in https://github.com/ncss-tech/soilDB/pull/382- get_SDA_interpretation:
method="weighted average"use CTEs by @brownag in https://github.com/ncss-tech/soilDB/pull/383 - fetchSDA_spatial:
geom.src="mlrapolygon"add support for query by other attributes by @brownag in https://github.com/ncss-tech/soilDB/pull/385 - Add
get_site_association_from_NASIS()by @brownag in https://github.com/ncss-tech/soilDB/pull/387 - Add
get_projectmilestone_from_NASIS()by @brownag in https://github.com/ncss-tech/soilDB/pull/390
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.8...2.8.9
Natural Resources - Soil and Land
- R
Published by brownag 10 months ago
soilDB - soilDB 2.8.8
soilDB 2.8.8 (2025-02-10)
This is a patch release with several bug fixes.
fetchSCAN(): Bug fix in when sensor column contains allNAROSETTA()now uses HTTPS URLfetchNASIS()bug fix for (now deprecated)pedon_idin horizon slot rather than site- Rebuilt SPC datasets:
loafercreek,gopheridge,mineralKing fetchNASISLabData(): usencsspedonlabdataiidas unique pedon ID
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.7...2.8.8
Natural Resources - Soil and Land
- R
Published by brownag about 1 year ago
soilDB - soilDB 2.8.7
soilDB 2.8.7 (2025-01-16)
- Several aliases of NASIS physical column names have been deprecated and will be removed in the next minor release (2.9.x). See https://ncss-tech.github.io/AQP/soilDB/bulletins/2025.01-1-soilDB-NASIS-column-aliases.html for details (#369)
fetchVegdata()- Added
"ecostateid","ecostatename","commphaseid","commphasename" to columns fromsiteandsiteobsjoined into"vegplot"result. - Fixed
"site"join used for"vegplot"table result. Now using LEFT join to addsiteecositehistoryinformation - Sites without vegetation plots are now excluded from the result
- Added
get_vegplot_trhi_from_NASIS_db()&get_vegplot_transect_from_NASIS_db()no longer join to thepedontable. Use the"siteobsiid"or vegetation plot"assocuserpedonid"to join to pedon records when necessary.- This change avoids issues with unintended duplication of records e.g. lab pedons that have multiple pedons per site observation. Thanks to Nathan Roe for suggestion.
get_vegplot_*()functions use INNER join tovegtransecttable where applicable, so records are only returned for vegplots with an associated transect. Thanks to Zach Van Abbema for suggestion.createSSURGO(): more informative error message when no export files found for import- Improved soilDBdata data sets used for unit tests of
fetchNASIS()andfetchVegdata()when a local NASIS instance is not available - Updated NASIS SoilProfileCollection data sets (
loafercreek,gopheridge,mineralKing)
soilDB 2.8.6 (2024-12-23)
fetchNASIS()andget_site_data_from_NASIS_db()now return Ecological Site State and Community Phase information (ecostatename, ecostateid, commphasename, commphaseid columns) from Site Observation tablecreateStaticNASIS()bug fixes- Removed workaround for {odbc}/nanoodbc VARCHAR(MAX) columns; now can directly use
DBI::dbReadTable()for all tables via NASIS ODBC connection - Fixed error when
output_path=NULL
- Removed workaround for {odbc}/nanoodbc VARCHAR(MAX) columns; now can directly use
fetchNASIS()changed default behavior tomixColors=FALSEwhich returns dominant condition for each moisture state rather than mixing LAB color coordinatesget_colors_from_NASIS_db()deprecatemixColorsargument, addmethodargument with options "dominant", "mixed", and "none". New aggregation method"none"returns long format representation of color data from phcolor table with no aggregation applied.
createSSURGO()updates:- Added incremental write of tabular data by table and soil survey area, which is much more memory efficient
- Added
maxruledepthargument to allow filtering ofcointerptable, and set default to0.- This reduces number of
cointerprows by about 75% for published SSURGO. Generally, Web Soil Survey exports have maximum rule depth of1, but custom NASIS exports can be "deeper"
- This reduces number of
- Updated behavior of
filenameargument whenconnDBIConnection is specified and improvedoverwritelogic - Added
dissolve_fieldto facilitate creating aggregate geometries by"mukey"or other spatial attribute - Added
include_tabularargument to support omitting tabular data when building a database - Now
include_spatialandinclude_tabularare allowed to be a character vectors of table namesTRUEis all tables,FALSEis no tables. This allows for subsets of the SSURGO data model to be specified with finer user control over database contents.
- Now a composite
"soil_metadata"table is made with"areasymbol"column and one row per soil survey area, rather than one table per soil survey area. This is more compact and scales better to larger databases.
What's Changed
- fetchVegdata: add siteobsiid to vegplot tables; activate vegbasalarea table by @natearoe in https://github.com/ncss-tech/soilDB/pull/366
- get_NASIS_table_name_by_purpose: Add basal area tables by @natearoe in https://github.com/ncss-tech/soilDB/pull/367
createSSURGO()updates by @brownag in https://github.com/ncss-tech/soilDB/pull/370- Deprecate NASIS column name aliases by @brownag in https://github.com/ncss-tech/soilDB/pull/369
New Contributors
- @natearoe made their first contribution in https://github.com/ncss-tech/soilDB/pull/366
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.5...2.8.7
Natural Resources - Soil and Land
- R
Published by brownag about 1 year ago
soilDB - soilDB 2.8.5
soilDB 2.8.5 (2024-11-04)
fetchLDM()add support forarea_typeargument with local database connections (dsnargument)fetchSCAN()updates:- Improved SCAN, CSCAN, SNOTEL, SNOWLITE station metadata (#61) via @jskovlin
- Timezone support for hourly data requested by
fetchSCAN()(#184) - All above-ground sensors are now returned, instead of just the first of each type (#359)
- Added new help file on NASIS database sources; see
?NASISLocalDatabase(#360) get_SDA_*()function updates related to consistent parameters for miscellaneous areas and minor components (#361)fetchSOLUS(): New function for downloading data from Soil Landscapes of the United States 100-meter (SOLUS100) soil property maps project repository (#362)fetchNASIS()more consistent QC messages and output for multiple site observations and lab samples- Updated SoilProfileCollection data sets (
loafercreek,gopheridge,mineralKing) for aqp 2.1.x object definition and recent changes tofetchNASIS()(#363)
What's Changed
- fetchSCAN: return all above-ground sensors by @brownag in https://github.com/ncss-tech/soilDB/pull/359
- Scan metadata updates by @dylanbeaudette in https://github.com/ncss-tech/soilDB/pull/357
- Add helpfile on NASIS Local Database sources by @brownag in https://github.com/ncss-tech/soilDB/pull/360
get_SDA_*()function updates by @brownag in https://github.com/ncss-tech/soilDB/pull/361- Update SoilProfileCollection datasets for aqp 2.1.x by @brownag in https://github.com/ncss-tech/soilDB/pull/363
- Add
fetchSOLUS()by @brownag in https://github.com/ncss-tech/soilDB/pull/362
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.4...2.8.5
Natural Resources - Soil and Land
- R
Published by brownag over 1 year ago
soilDB - soilDB 2.8.4
soilDB 2.8.4 (2024-08-19)
createSSURGO()bug fixes following changes in 2.8.3- generating
gpkg_contentsfor GeoPackage files failed to add entries for "features" data_type filenameargument not properly handled in some cases
- generating
SDA_query()handle another possible failure point in error handling codecreateStaticNASIS()useodbc::dbListFields()instead ofodbc::odbcConnectionColumns()- fetchNASIS Vignette
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.3...2.8.4
Natural Resources - Soil and Land
- R
Published by brownag over 1 year ago
soilDB - soilDB 2.8.3
soilDB 2.8.3 (2024-06-11)
- Updates to SoilWeb web coverage services
- ISSR800 authoritative grid system altered slightly
ISSR800.wcs()andsoilColor.wcs()now set color table internally when possible- updated source data: ISSR800 (FY24) and soil color (FY23)
SDA_query()updates- Better messaging on error
- Handle try-error result more gracefully in high-level functions (#352)
createSSURGO(): added support for creating DuckDB, PostgreSQL, and other DBI-compatible databases (#352) viaconnargumentfetchSDA()andget_chorizon_from_SDA()concatenate multipletexclusing a comma when a texture group contains multiple texture classes (e.g. stratified textures) (fixes #353)fetchNASIS()/.formatLandformString(): appendgeomfmodcolumn to landscape, landform, and microfeature strings where present; thanks to Gabriel Benitez for suggestionfetchNASIS()/get_extended_data_from_NASIS_db(): fix conversion of codes to labels for microrelieffetchSCAN(): fix header format; thanks to @dschlaep for reporting and providing a fix
What's Changed
- SDA_query: handle API failures with more grace by @brownag in https://github.com/ncss-tech/soilDB/pull/351
- createSSURGO: add support for creating DuckDB and other DBI-compatible databases by @brownag in https://github.com/ncss-tech/soilDB/pull/352
- get_chorizon_from_SDA: concatenate many:1 texcl, lieutex within RV chtexturegrp by @brownag in https://github.com/ncss-tech/soilDB/pull/353
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.2...2.8.3
Natural Resources - Soil and Land
- R
Published by brownag over 1 year ago
soilDB - soilDB 2.8.2
soilDB 2.8.2 (2024-04-22)
- SoilWeb Web Coverage Service MUKEY grid data source (used for
mukey.wcs()) and metadata have been updated for FY2024- Note that ISSR800 WCS (
ISSR800.wcs()source) is still using FY2023/FY2022 data
- Note that ISSR800 WCS (
get_SDA_coecoclass()default data returned for methods "Dominant Component", "Dominant Condition" and "None" now includelocalphasecolumnget_soilseries_from_NASIS()andget_competing_soilseries_from_NASIS(): addSSargument for parity with all other NASIS "get" methods- default to
FALSEfor backward compatibility/common use cases
- default to
get_site_data_from_NASIS_db()gains Frost Free Days, MAP, REAP, MAAT, MAST, MSAT, MSST, MWAT, MWST, and Parent Material Group Name; thanks to Zach Van Abbema for suggestion- Changes in column names related to Area table /
"areasymbol"(#272); thanks to Zach Van Abbema for suggestionget_site_data_from_NASIS_db(): Add state, county, and MLRA areasymbol references ("site_state","site_county","site_mlra")get_mapunit_from_NASIS_db(): Add dominant MLRA areasymbol reference column"lmapunit_mlra"get_soilseries_from_NASIS(): replaceareasymbolcolumn to use relationship-style name"soilseries_typelocst"(minor breaking change)
fetchSDA_spatial(): Add support for querying mapunit point ("mupoint"), mapunit line ("muline"), special feature point ("featpoint"), special feature line ("featline") bymukeyorfeatkey, geometry type selectable viageom.srcargumentSDA_spatialQuery(): Add support for querying mapunit point ("mupoint"), mapunit line ("muline"), special feature point ("featpoint"), special feature line ("featline") for a spatial extent, geometry type selectable viawhatargumentsimplifyFragmentData()/simplifyArtifactData()efficiency improvement when all records are missing data
What's Changed
- Update and refactor
SDA_spatialQuery()by @brownag in https://github.com/ncss-tech/soilDB/pull/344 - fetchSDA_spatial: Implement
geom.src"mupoint","muline","featpoint"and"featline"support by @brownag in https://github.com/ncss-tech/soilDB/pull/345 - SDA_spatialQuery: implement
what'mupoint','muline','featpoint','featline'by @brownag in https://github.com/ncss-tech/soilDB/pull/346
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.1...2.8.2
Natural Resources - Soil and Land
- R
Published by brownag almost 2 years ago
soilDB - soilDB 2.8.1
soilDB 2.8.1 (2024-01-09)
get_mapunit_from_NASIS(),get_lmuaoverlap_from_NASIS()andget_legend_from_NASIS()gainareatypenameargument used for filtering legends byareatypename.- Default results include
"Non-MLRA Soil Survey Area"and"MLRA Soil Survey Area". Set toNULLfor no filter.
- Default results include
- Fixed bugs in
waterDayYear()andsummarizeSoilTemperature()for leap years (#333) fetchSoilGrids()upgrades- Fixed a bug with
data.frameoutput - Requests for more than 5 sites now include a call to
Sys.sleep()to conform with ISRIC "Fair Use" policy - Upgraded SoilProfileCollection spatial promotion for aqp 2.0+
- Added 10 kPa, 33 kPa and 1500 kPa water content estimates to default variable sets for point and grid queries
- Fixed a bug with
fetchSDA_spatial()gains ability to query mapunit delineations by Ecological Site ID (by.col="ecoclassid")get_SDA_coecoclass()defaultecoclasstypenameis nowc("NRCS Rangeland Site", "NRCS Forestland Site"), as this is the most common type of aggregation and is least prone to producing unusual composition-related errors due to duplications- Fixed bug related to merging tables/integer data type
- Fixed bug in calculation of "Not assigned" fraction of mapunits which could result in negative aggregate component percentages below the default threshold
What's Changed
fetchSoilGrids()updates by @brownag in https://github.com/ncss-tech/soilDB/pull/335
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.8.0...2.8.1
Natural Resources - Soil and Land
- R
Published by brownag about 2 years ago
soilDB - soilDB 2.8.0
soilDB 2.8.0 (2023-12-22)
- Minimum {aqp} version set to v2.0.2. This is due to changes in the namespace related to
aqp::col2Munsell(), to "encourage" users to update to the more efficient routines provided in {aqp} 2+ (if they haven't already), and prepare for future updates in the 2.x series. - Fix bugs in
get_SDA_interpretation()whendsnrefers to a local SQLite source and in concatenation of reason string whenwide_reason=TRUE. Thanks to Kevin Wolz (@kevinwolz) createSSURGO()updates:- Breaking change: Now uses the standard SSURGO layer names for spatial data (e.g.
"mupolygon"rather than"soilmu_a"). - Creates indices for foreign keys and other columns important for data analysis, dramatically improving the performance of standard queries on SQLite sources.
- Now works properly on STATSGO data sets for individual states or CONUS. Previously tabular data would be transferred but spatial data were not.
- Breaking change: Now uses the standard SSURGO layer names for spatial data (e.g.
downloadSSURGO()gainsdbargument which gives ability to download STATSGO by state or all of US from Web Soil Survey. Thanks to Meghan Krueger for suggestion.get_SDA_property(): weighted average/dominant component numeric methods now returnmukeyin first column position; for parity with otherget_SDA*methods recently updated/already doing this, making it easier to use these columns for raster attribute tables viaterra::set.levels()fetchNASIS(lab=TRUE)fixed a bug when multiplephlabresultsrecords are present for a single horizon, but one or both is missing bottom depth. Thanks to Meyer Bohn (@MollicMeyer) for reporting.- SoilProfileCollection objects now include a time stamp in their metadata, accessed as:
metadata(x)$created(#235) - Added
area_typeargument tofetchLDM()for non-SSA area queries (#328) - Added
gridargument tofetchSoilGrids()for downloading Cloud-Optimized GeoTIFF subsets for spatial extent (#329) fetchOSD()now automatically batches requests into sets of 100 series, allowing arbitrarily large requests to be made (#239)
What's Changed
- Testing new aqp::col2Munsell() replacing aqp::rgb2munsell() by @dylanbeaudette in https://github.com/ncss-tech/soilDB/pull/325
- soilDB v2.8.0 by @brownag in https://github.com/ncss-tech/soilDB/pull/327
- fetchLDM: add
area_typeargument for non-SSA area queries by @brownag in https://github.com/ncss-tech/soilDB/pull/328 - fetchSoilGrids: add
gridargument for downloading COG subsets for extent by @brownag in https://github.com/ncss-tech/soilDB/pull/329
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.7.10...2.8.0
Natural Resources - Soil and Land
- R
Published by brownag about 2 years ago
soilDB - soilDB 2.7.10
soilDB 2.7.10 (2023-11-16)
-
fetchSDA_spatial()gainsgeom.src="mlrapolygon"for obtaining Major Land Resource Area (MLRA) polygon boundaries. When using this geometry sourcexis a vector ofMLRARSYM(MLRA Symbols).- The geometry source is the MLRA Geographic Database v5.2 (2022) which is not (yet) part of Soil Data Access. Instead of SDA, GDAL utilities are used to read a zipped ESRI Shapefile from a remote URL: https://www.nrcs.usda.gov/sites/default/files/2022-10/MLRA_52_2022.zip. Therefore, most additional
fetchSDA_spatial()arguments are not currently supported for the MLRA geometry source. In the future amlrapolygontable may be added to SDA (analogous tomupolygonandsapolygon), and the function will be updated accordingly at that time.
- The geometry source is the MLRA Geographic Database v5.2 (2022) which is not (yet) part of Soil Data Access. Instead of SDA, GDAL utilities are used to read a zipped ESRI Shapefile from a remote URL: https://www.nrcs.usda.gov/sites/default/files/2022-10/MLRA_52_2022.zip. Therefore, most additional
-
Web coverage services and related raster attribute tables provided by SoilWeb (
mukey.wcs()etc.) are now using the SoilWeb load-balancer URL -
get_SDA_coecoclass()gainsmethod="all"for aggregating information about ecological sites and related components. The method performs a condition-based aggregation for each ecological site condition in the map unit, producing a "wide" data.frame result with as many columns as needed to portray all site conditions. -
fetchLDM()gains new argumentWHEREfor supplying a custom SQL where clause for selecting sites of interest. For example:fetchLDM(WHERE = "CASE WHEN corr_name IS NOT NULL THEN LOWER(corr_name) ELSE LOWER(samp_name) END = 'musick'")
soilDB 2.7.9 (2023-09-01)
- Added new
methodoptions forfetchSDA_spatial(). Aggregation grouping is controlled by theby.colargument. This works for mapunit and survey area polygon geometries, aggregating all polygons in the group for eachmukey,nationalmusym,lkey, orareasymbolextent. method="extent"method calculates a bounding rectanglemethod="convexhull"calculates the convex hullmethod="union"returns a MULTIPOLYGONmethod="collection"returns a GEOMETRYCOLLECTION
Bug Fixes
-
Bug fix for
get_vegplot_transpoints_from_NASIS_db(); using wrong record ID for transect points -
get_NASIS_table_name_by_purpose()now includes"pointplantcoverdetails","plantprodquadratdetails"in the"vegetation"table purpose group
What's Changed
- fetchSDA_spatial: add new T-SQL aggregate geometry methods by @brownag in https://github.com/ncss-tech/soilDB/pull/299
- fetchSDA_spatial: add
geom.src='mlrapolygon'by @brownag in https://github.com/ncss-tech/soilDB/pull/302 get_SDA_interpretation(): add subrule ratings to "reason" field by @brownag in https://github.com/ncss-tech/soilDB/pull/308mukey.wcs(): fix areas containing all NoData and resolution for AOI at edge of WCS extent by @brownag in https://github.com/ncss-tech/soilDB/pull/306- get_SDA_coecoclass: add
method="all"by @brownag in https://github.com/ncss-tech/soilDB/pull/301 - alignment of WCS results with authoritative grid topology by @brownag in https://github.com/ncss-tech/soilDB/pull/313
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.7.8...2.7.10
Natural Resources - Soil and Land
- R
Published by brownag about 2 years ago
soilDB - soilDB 2.7.8
soilDB 2.7.8 (2023-08-29)
-
Added new SoilWeb "Web Coverage Service" vignette (https://ncss-tech.github.io/soilDB/articles/wcs-ssurgo.html) related to creating thematic maps using grids of mapunit keys from SoilWeb with aggregated tabular data from Soil Data Access.
-
get_SDA_*()functions now all returnmukeyvalues in first column -
mukey.wcs()gains a 30m gridded version of Hawaii and Puerto Rico SSURGO data viadb="HI_SSURGO"anddb="PR_SSURGO", respectively. -
get_vegplot_data_from_NASIS_db(): now uses LEFT join to plant table so that empty records can be diagnosed; thanks to @natearoe for suggestion -
Added new NASIS query functions for vegetation transect point and quadrat details:
get_vegplot_prodquadrats_from_NASIS_db()andget_vegplot_transpoints_from_NASIS_db(); thanks to Zach Van Abbema for suggestion
Bug Fixes
-
get_SDA_property(method="Dominant Component (Numeric)")now includes minors by default, fixing issues with STATSGO mapunits that have no major components flagged. (@dylanbeaudette) -
get_component_data_from_NASIS_db(): removed duplicatedhydricratingcolumn, also now includes climate columns with standard names. This is a continuation of the idea that custom aliases for standard NASIS columns are deprecated (https://github.com/ncss-tech/soilDB/issues/242) -
.pickBestEcosite()now considersrecord_when_last_updatedin lieu of correlation date; this stabilizes sort order from SQLite snapshot v.s. NASIS local database sources (https://github.com/ncss-tech/soilDB/issues/295) -
get_component_from_GDB(): fixes for batching over component geomorphic description and parent material group @smroecker -
get_mapunit_from_SDA(): handle possibility of mapunit-level SDA query failure
What's Changed
- Add vegetation transect point and quadrat details by @brownag in https://github.com/ncss-tech/soilDB/pull/285
- fetchVegdata: LEFT join to plant table by @brownag in https://github.com/ncss-tech/soilDB/pull/287
- Use LEFT join for component parent material and geomorph by @brownag in https://github.com/ncss-tech/soilDB/pull/289
- Testing fix for #292 by @brownag in https://github.com/ncss-tech/soilDB/pull/293
- Add draft WCS vignette by @brownag in https://github.com/ncss-tech/soilDB/pull/290
- .soilDB_curl_get_JSON: suppress messages properly by @brownag in https://github.com/ncss-tech/soilDB/pull/297
- Fix some SDA-related errors by @brownag in https://github.com/ncss-tech/soilDB/pull/298
- Remove {scales} from Suggests by @brownag in https://github.com/ncss-tech/soilDB/pull/288
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.7.7...2.7.8
Natural Resources - Soil and Land
- R
Published by brownag over 2 years ago
soilDB - soilDB 2.7.7
soilDB 2.7.7 (2023-03-10)
Enhancements
-
fetchNASIS(from="pedons")andget_site_data_from_NASIS_db()now returnsiteobsiidcolumn (@natearoe) -
mukey.wcs()gains experimental gridded STATSGO layer (300m) -
Add
get_NASIS_table_metadata()for returning information about columns in NASIS tables. -
simplifyFragment/ArtifactData(): downgrade warnings -
get_cosoilmoist_from_SDA():mukeyandcokeynow included whenduplicates=TRUE; thanks to @andypaolucci for catching this -
fetchSoilGrids()-
Add
SpatVectorcoercion for input locations (already supported sf/sp classes) -
Add handling for messages from API about erroneous input
-
-
Add
fetchNASIS("pedons")columns vignette -
Add
get_NASIS_table_metadata()and optional argumentinclude_descriptionforget_NASIS_metadata()andget_NASIS_column_metadata() -
get_SDA_cosurfmorph()+get_SDA_pmgroupname(): support for including or excluding misc. areas viamiscellaneous_areasargument -
get_site_data_from_NASIS_db():-
Omit "multiple horizontal datums" warning
-
Remove calculated X/Y long/lat + add proper NASIS alias for long/lat
-
Add
siteothvegclassid/name - add tables to default lookup/site sets
-
Bug fixes
-
dbQueryNASIS(..., close=TRUE)now callsdbDisconnect()on.exit()(ensuring connections get closed on error) -
fetchSCAN():-
2x requests when
timeseriesargument not specified -
Account for no results (e.g. year = 1800)
-
Bug fix in vectorization when daily + hourly data requested
-
-
downloadSSURGO():-
Handle
SDA_query()with invalid syntax inWHEREclause -
Fix for
include_template=FALSE
-
-
createSSURGO()- Attribute tables are now added to
gpkg_contentswhen outputfilenameis a GeoPackage
- Attribute tables are now added to
-
Fix for
.get_comonth_from_SDA() -
Fix selected set (
SSargument) forget_ecosite_history_from_NASIS_db()inget_site_data_from_NASIS_db() -
get_SDA_pmgroupname: returnNA(not "NULL") for empty/missingpmgroupnamewhensimplify=TRUE -
SDA_spatialQuery():-
geomIntersection=TRUEwithdb="SAPOLYGON"now correctly labels theareasymbolcolumn (previously wasmukey) to matchgeomIntersection=FALSEand SDA schema -
Bounding box extent polygons are now only calculated for
SpatRaster(notSpatVector) input
-
What's Changed
- get_site_data_from_NASIS_db: Add siteothvegclass id/name by @brownag in https://github.com/ncss-tech/soilDB/pull/280
- Improving support for
get_SDA*()component filters by @brownag in https://github.com/ncss-tech/soilDB/pull/259 - Table and Column Metadata by @brownag in https://github.com/ncss-tech/soilDB/pull/278
- Add
get_ecosite_history_from_NASIS_db()by @brownag in https://github.com/ncss-tech/soilDB/pull/281 - createSSURGO: add minimal gpkg_contents entries for attribute tables by @brownag in https://github.com/ncss-tech/soilDB/pull/283
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.7.6...2.7.7
Natural Resources - Soil and Land
- R
Published by brownag almost 3 years ago
soilDB - soilDB 2.7.6
soilDB 2.7.6
-
All references to
soilDB.envhave been replaced with a function that returns that environment object (get_soilDB_env()); thanks to @MollicMeyer for identifying this as a problem in #277. This object used to be exported but was unintentionally omitted from NAMESPACE; this has been fixed. -
fetchNASIS(lab=TRUE)bug fix related to many:1 relationships between lab samples and morphologic horizons with all-missing columns having logical datatype (#277) -
Added
get_SRI()andfetchSRI()functions for accessing USFS Region 6 Soil Resource Inventory information from https://ecoshare.info/; thanks to @joshualerickson for the contribution (https://github.com/ncss-tech/soilDB/pull/274) -
fetchLDM()now sets the horizon designation metadata like other fetch* functions that return SoilProfileCollection objects (@dylanbeaudette) -
mukey.wcs()fix spurious warnings occasionally given due to minor differences (rounding) of grid dimensions -
{curl} has been moved from Suggests to Imports
-
simplfyFragmentData()alias forsimplifyFragmentData()removed (@infotroph)
What's Changed
- soil resource inventory functions by @joshualerickson in https://github.com/ncss-tech/soilDB/pull/274
- Fix apparent typo in simplifyFragmentData alias by @infotroph in https://github.com/ncss-tech/soilDB/pull/279
New Contributors
- @joshualerickson made their first contribution in https://github.com/ncss-tech/soilDB/pull/274
- @infotroph made their first contribution in https://github.com/ncss-tech/soilDB/pull/279
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.7.5...2.7.6
Natural Resources - Soil and Land
- R
Published by brownag about 3 years ago
soilDB - soilDB 2.7.5
soilDB 2.7.5 (2022-10-17)
- Updates to SSURGO File Geodatabase functions (
fetchGDB()and related) by @smroecker - Added
soilColor.wcs()to access a web coverage service for soil color at various depths by @dylanbeaudette waterDayYear(): fix for CRAN and different timezones; now defaults totz="UTC"#268summarizeSoilTemperature(): set default timezone totz="UTC"
- Fix for
uncode()on pre-decoded values when ChoiceName and ChoiceLabel overlap #273- Fix for
NASISChoiceList()related to #273
- Fix for
get_soilseries_from_NASIS(): Removeareaacresandobtermfor #272 by @smroecker- Fix for
get_OSD(..., fix_ocr_errors = TRUE)with empty typical profile for #271 by @dylanbeaudette fetchNASIS()drops non-representative and additional whendropNotRepresentative/dropAdditionalare set (@natearoe)- Fix for
as.POSIXct()in R 4.3+; for #265 - Fix for "status was 'SSL connect error" for
fetchKSSL()and other functions that download JSON (@kramdog)- Now uses standard soilDB {curl} handle, which includes a longer timeout and
ssl_verifyhost=0
- Now uses standard soilDB {curl} handle, which includes a longer timeout and
- Fixes for compatibility with {jsonlite} >1.8.1 that now uses {base} rather than {curl}
- Update row count expectations for end of FY22 SSURGO refresh
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.7.4
soilDB 2.7.4 (2022-09-30)
-
uncode()replaced\(x)syntax inadvertently included in a recent update to fix R < 4.1 compatibility; thanks to @cbrueffer for catching this (https://github.com/ncss-tech/soilDB/issues/262)! -
get_SDA_property()fixes for weighted average method (https://github.com/ncss-tech/soilDB/issues/229, https://github.com/ncss-tech/soilDB/issues/261) -
fetchOSD()now automatically encodes horizon distinctness codes to default depth offsets, stored in hz-level attr:hzd
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.7.3
soilDB 2.7.3 (2022-08-19)
-
get_SDA_property()all methods now supportmiscellaneous_areasargument. This defaults toFALSEfor the methods it was previously implemented for--so be aware that queries using"Dominant Component"or"Dominant Condition"(which previously did not respond tomiscellaneous_areas) may have the number of rows in result reduced due to omission of miscellaneous land types. If this is unexpected or undesired, please usemiscellaneous_areas=TRUE. (https://github.com/ncss-tech/soilDB/issues/257) -
Adds
get_NASIS_metadata()and helper methodget_NASIS_column_metadata()and other new tools for working withuncode(), factors and NASIS metadata cached in the package. -
Bug fix for
get_cosoilmoist_from_SDA(); thanks to Monika Shea @monikashea for reporting the problem (https://github.com/ncss-tech/soilDB/issues/253) -
fetchNASIS_report()now works with the output from"get_site_from_NASIS"report (useful for site records without associated pedons) -
createSSURGO()gains argumentsquietandinclude_spatialto toggle messages and inclusion of spatial data in created SQLite database, respectively -
downloadSSURGO()now handles queries againstsacatalogthat return no results more gracefully -
get_OSD(): Addfix_ocr_errorsargument forresult='json'to fix common optical character recognition errors associated with horizon designations and colors (NOTE: does NOT fix depths) -
fetchSCAN()gainstimeseriesargument to support batch downloads of hourly data. Additional arguments (...) are passed as a raw request, allowing other parameters sent in request to be modified if needed, and bypassing batch functionality. This is similar to thereqargument syntax used in earlier versions of this function, which had been deprecated for some time now. Thanks to Matthew Morriss for raising the discussion item @morrismc99 (https://github.com/ncss-tech/soilDB/discussions/260). -
{curl} moved from Suggests to Imports;
curl::curl_download()is now used instead ofutils::download.file()because it seems to handle SSL certificates better on some networks.
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.7.2
soilDB 2.7.2 (2022-06-27)
-
fetchNASIS("components'): Fix and refactor ( breaking change from 2.7.1, which introduced a bug/inconsistency) of recent change;duplicatesargument is now required to merge in data from mapunit/legend tables (where many:1 relationships between legend/mapunit and datamapunit are possible). In 2.7.1 possibly incomplete mapunit/legend tables could be joined to SoilProfileCollection result (if and only if the tables were populated in selected set/local DB). Does not change historic (<=2.7.0) default behavior. Thanks to @dylanbeaudette for suggesting use ofget_component_correlation_data_from_NASIS_db()here. -
Several fixes for Roxygen documentation (notably for
ROSETTA()and various NASIS web report related functions) that were missing@exporttags. Several previously-exported functions missed being explicitly exported in the new Roxygen-generate NAMESPACE. These unintentional omissions from 2.7.1 NAMESPACE have been resolved. -
Fixes an old bug in
fetchSDA()/get_chorizon_from_SDA()related to LEFT OUTER versus RIGHT JOIN tochtexturetable
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.7.1
soilDB 2.7.1 (2022-06-10)
get_SDA_coecoclass()better handling ofNULLecoclassref; support for filtering onecoclasstypename;not_assigned_valuenow applies toecoclassname,ecoclasstypenameandecoclassrefcolumns in addition toecoclassid; Thanks to Andy Paolucci and Jason Nemecek. Also, added additional columns from legend/mapunit tables (areasymbol,lkey,muname).fetchNASIS(from="components")now returns mapunit and legend information (if loaded in local NASIS database); results now containmustatusandrepdmuwhich can be used to remove components from additional mapunits and non-representative data mapunits; thanks to Nathan Roe- Convert UTF-8 strings in
us_ss_timelineresult to ASCII SDA_query(): Fixed POST request that could produce unhandled errors on network failure (now returnstry-errorlike other error-causing code)SDA_query(): In the event of a syntax error, error contents are now returned as a message, not a warning.uncode()andcode()now work withdata.tableandtibbleobjects.- Various fixes to tests and error handling code to reduce likelihood of thrown errors from network problems or missing suggested packages.
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.7.0
soilDB 2.7.0 (2022-05-18)
- Spatial
- Dropped imports from
spandrasterwhich meanssoilDBno longer requires the soon-to-retirergdalpackage. - All spatial data processing has been moved to
sfandterra, which have been added to Suggests.- (breaking change) Classes from these packages (e.g.
sf,SpatRaster) will be returned by default rather thanSpatial*DataFrameorRasterLayerfromspandraster. - (breaking change) Spatial functions that take spatial input will return the same class type as the input unless otherwise specified.
fetchSDA_spatial()andSDA_spatialQuery()gainas_Spatialargument; whenTRUEequivalent (backward compatible)spandrasterdata types are returned.- Alternately, you may set
options(soilDB.return_Spatial=TRUE)
- (breaking change) Classes from these packages (e.g.
mukey.wcs()andISSR800.wcs()bug fix for some instances where the target extent was miscalculated, resulting in slight differences from requested resolution (resargument) of result.mukey.wcs()gains a new possible data sourcedb="RSS"which accesses a Web Coverage Service containing grids from Raster Soil Surveys in the United States.- See: https://github.com/ncss-tech/soilDB/pull/229 for more details on what has changed.
- Dropped imports from
- NASIS
- (breaking change)
rmHzErrorsargument now defaults toFALSE. Please let us know if allowing horizon errors results in unexpected behavior so we can repair various interfaces that rely on no errors being present. Seeaqp::checkHzDepthLogic()for more information on the types of things that used to result in profiles being removed from results and for guidelines on how to fix. - Added several new columns from the
plotplantinventorytable toget_vegplot_species_from_NASIS_db()result; thanks to Zachary Van Abbema for suggestion and feedback - Local NASIS metadata used for
uncode()are now cached within an R session which results in faster query processing times for users with a local NASIS database connection set up.- The
dbargument touncode()has been deprecated. Now,code()anduncode()can useChoiceNameand/orChoiceLabelin coding and decodingChoiceValuefor all data sources.
- The
- Rock fragment and artifact sieving now uses <76mm as the upper boundary for gravel fraction, and a related QC message has been removed
- (breaking change)
- SSURGO / Soil Data Access
- Added
get_SDA_cosurfmorph(): a new function in "SSURGO On Demand" style. Users can customize the WHERE clause, target tables and the grouping variable used to calculate proportions (defaultby="compname")- "cosurfmorphgc" summarizes "geomposmntn", "geomposhill", "geomposflats", "geompostrce"
- "cosurfmorphhpp" summarizes "hillslopeprof"
- "cosurfmorphss" summarizes "shapeacross", "shapedown", and concatenated "surfaceshape"
- Several fixes for logic of
get_SDA_property()withmethod="weighted average"andinclude_minors=TRUE/miscellaneous_areas=TRUE, thanks to Andy Paolucci and Dylan Beaudette for testing and providing feedback on the queries. - All
get_SDA_*()methods (exceptget_SDA_metrics()) now support input of customWHEREclause in lieu ofmukeys/areasymbolsarguments and gain adsnargument for specifying a local SQLite database or DBIConnection. - Added
downloadSSURGO()for downloading/extraction of the SSURGO data by survey area from Web Soil Survey. - Added
createSSURGO()for building of local databases as SQLite/Geopackage from one or more SSURGO exports.- Exports can be obtained via
downloadSSURGO(), from NASIS or downloaded from other sources such as https://datagateway.nrcs.usda.gov/GDGHome_DirectDownLoad.aspx.
- Exports can be obtained via
- Added
What's Changed
- Use terra/sf to replace raster/sp/rgdal by @brownag in https://github.com/ncss-tech/soilDB/pull/229
- Add
get_SDA_cosurfmorph()by @brownag in https://github.com/ncss-tech/soilDB/pull/245 - downloadSSURGO & createSSURGO: download WSS ZIP archives by soil survey area and create local databases (SQLite/SpatiaLite/Geopackage) by @brownag in https://github.com/ncss-tech/soilDB/pull/244
- Add get_SSURGO_utils.R by @brownag in https://github.com/ncss-tech/soilDB/pull/247
get_SDA_*(): Local SDA-style queries by @brownag in https://github.com/ncss-tech/soilDB/pull/246
Full Changelog: https://github.com/ncss-tech/soilDB/compare/2.6.15...2.7.0
Natural Resources - Soil and Land
- R
Published by brownag over 3 years ago
soilDB - soilDB 2.6.15
soilDB 2.6.15 (2022-04-13)
fetchNASIS()- New
mixColorsargument used to toggle color mixing for pedon horizons with multiple colors per moisture state.- Default
TRUEmixes colors based on reported color percentage viaestimateColorMixture().FALSEreturns the dominant color in each moisture state, or first record for cases withoutcolorpctpopulated.
- Default
- Added
taxreactionandtaxfamhahatmatclto extended taxonomic information - Added new option (
soilDB.NASIS.skip_uncode) to bypassuncode()in NASIS functions (mostly used for debugging or special database instances that come pre-decoded) - An instance in
fetchNASIS(from="components")where local database connection was left open was fixed
- New
- Added
fetchLDM()function to access Kellogg Soil Survey Lab Data Mart via Soil Data Access or local SQLite snapshot (https://github.com/ncss-tech/soilDB/pull/243) - Added
get_SDA_metrics()for accessing usage metrics for Soil Data Access, Web Soil Survey and the Lab Data Mart. Thanks to Jason Nemecek for submitting the base SQL query get_SDA_interpretation(method = "dominant condition")now includestotal_comppct_*columns reflecting the summed component percentage of the dominant condition- Updated metadata for SCAN sites that were missing
pedlabsampnum(KSSL Pedon Sample ID)
Natural Resources - Soil and Land
- R
Published by brownag almost 4 years ago
soilDB - CRAN Release 2.6.14
soilDB 2.6.14 (2022-03-15)
waterYearDay()bug fix for more specific (sub-daily) date-time formatsfetchSCAN()better handling of empty results in multi-site queries- Updates to queries, metadata and sample datasets for NASIS 7.4.1 Database Model
fetchNASIS("pedons")no longer includespmweatheringfetchNASIS("components")no longer includesecositeorigin- New Component Ecological Site attributes added
stringsAsFactorsargument to soilDB functions has been deprecated in favor of a package option- Default behavior for NASIS domains is to return character labels rather than coded factors
- Use
NASISDomainsAsFactor(TRUE)to toggle package optionsoilDB.NASIS.DomainsAsFactor
Natural Resources - Soil and Land
- R
Published by brownag almost 4 years ago
soilDB - CRAN Release 2.6.13
soilDB 2.6.13 (2022-01-29)
fetchSDA_spatialnow supportsby.col"areaname","mlraoffice", and"mouagencyresp"; thanks to suggestion by Jay SkovlinfetchNASISfix for multiple site observation records with surface fragments; thanks to bug report from Brianna WegnerwaterYearDay()use format and timezone for start date conversionfetchNASISfix forfrom="components", SS=FALSEand queries where no NASIS local database is present (e.g. from SQLite source)- Update to
NASIS_table_column_keysdataset of NASIS primary and foreign keys by table name to include many more tables fetchVegdata()no longer errors for child table queries unless site/site observation/vegetation plot records are missingfetchOSD(extended=TRUE)now returns an element"NCCPI"containing the National Commodity Crop Production Index summaries. The values returned are quantiles at the 1, 5, 25, 50, 75, 95, and 99% levels over all SSURGO components withcompnamematchingseriesfor irrigated and non-irrigated condition.
Natural Resources - Soil and Land
- R
Published by brownag about 4 years ago
soilDB - CRAN Release 2.6.12
soilDB 2.6.12 (2022-01-07)
get_SDA_property()now works with mixed component and horizon-level properties; thanks to Matthieu Stigler for the bug report- Added
get_SDV_legend_elements()for fetching and parsing XML for Soil Data Viewer / Web Soil Survey-style symbol themes for soil interpretations from Soil Data Access fetchNASIS()pedon and component geomorphic summaries now include columns for landscape, microfeature, microrelief, 2D/3D morphometry, and slope shapefetchNASIS('pedons')now usessimplifyFragmentData()for surface fragments
soilDB 2.6.11 (2021-12-21)
fetchSDA()handle NULL component-level results with an informative errorfetchSDA()now (again) returns mapunit/legend-level information viaget_mapunit_from_NASIS()createStaticNASIS()and queries to SQLite NASIS snapshots now preserve date/time using RSQLite 2.2.4+ viaextended_types=TRUEargument todbConnect()get_soilseries_from_NASIS()now returnssoiltaxclasslastupdatedas a date/time and stores the year in calculated columnsoiltaxclassyearlastupdated- Added several tables to thematic groups in
get_NASIS_table_name_by_purpose() fetchOSD()gains surface shape proportions in extendedshape_acrossandshape_downtablesSDA_spatialQuery()what='mukey'now works withdb='STATSGO'- Added metadata to
loafercreek,gopheridgeandmineralKing waterYearDay()pass throughformatargument for POSIX time conversion
Natural Resources - Soil and Land
- R
Published by brownag about 4 years ago
soilDB - CRAN Release 2.6.10
soilDB 2.6.10 (2021-12-14)
waterDayYear()and.formatDates()allow optionalformatandtzargument; used for consistent POSIX time conversion in tests where date/time has granularity finer than one dayfetchSDA()extensions for better handling of components with no horizon dataSDA_spatialQuery()andprocessSDA_WKT()fully use {sf}, replacing {sp} in these contextsSDA_spatialQuery()gains argumentbyFeatureto use multiple single-feature queries and combine the results with a unique feature ID specified byidcolargument. This allows for specific feature intersection results without secondary spatial overlay of the polygons (https://github.com/ncss-tech/soilDB/issues/222)dbConnectNASIS()no longer requires that the NASIS credentials option be set if thedsnargument is specified.- Rebuilt
loafercreek,gopheridgeandmineralKingfrom latestfetchNASIS()results.
Natural Resources - Soil and Land
- R
Published by brownag about 4 years ago
soilDB - CRAN Release 2.6.9
soilDB 2.6.9 (2021-12-03)
- Replaced functionality using {plyr}/{reshape2} with {base}/{data.table}
processSDA_WKT(): replaced {rgeos} with {wk} and {sf}SDA_spatialQuery(): addedquery_stringargumentget_SDA_property(): fixes for MIN/MAX aggregation (https://github.com/ncss-tech/soilDB/issues/219)get_component_from_SDA(): fragment size thresholds now conform with new (clarified) NSSH definitions
soilDB 2.6.8 (2021-11-05)
fetchNASIS()upgrades: use data.table and base internally for data aggregationfetchNASIS("components")now "sieves" rock fragments and human artifacts using same routines as for pedons; respectsnullFragsAreZeroargumentfetchKSSL(..., returnGeochemicalData = TRUE)safely returns 0-lengthdata.framewhen no data available
soilDB 2.6.7 (2021-10-27)
- Removed several packages from Suggests: {gridExtra}, {ggplot2}, {viridisLite}, {mapview}, {rasterVis}
get_OSD(): Handle "NA" and type conversion for JSON results an convert spaces to underscores for file names as neededfetchSCAN(): graceful handling of timeout and converted from {plyr} to {data.table}; (https://github.com/ncss-tech/soilDB/issues/161, https://github.com/ncss-tech/soilDB/issues/184)get_EDIT_ecoclass_by_geoUnit(): graceful handling of timeoutget_SDA_muaggatt(): addquery_stringargument for parity with other "SSURGO on demand" /get_SDA_*()functions
soilDB 2.6.6 (2021-09-24)
get_SDA_pmgroupname()andget_SDA_hydric()now support alternate aggregation methods.- Default for
get_SDA_pmgroupname()is"dominant component", now also supports"dominant condition"and"none". - Default for
get_SDA_hydric()is a map unit level aggregation of components and assigns new classes ; now supports"dominant component","dominant condition"and"none"
- Default for
Natural Resources - Soil and Land
- R
Published by brownag about 4 years ago
soilDB - CRAN Release 2.6.5
soilDB 2.6.5 (CRAN: 2021-08-21)
- API calls that return geometry in projected coordinates (AEA/NAD83) now use ESPG:5070 instead of EPSG:6350
soilDB 2.6.4 (unreleased; 2021-08-06)
fetchNASIS(from="pedons")now supportsfill=TRUEargument just likefrom="components"to include pedons that have no horizon recordscreateStaticNASIS(): column order should match NASIS, even if data types require reorder for ODBC driverfetchSoilGrids()bug fixes, updates to metadata and references in documentation (https://github.com/ncss-tech/soilDB/issues/201)- Corrected the conversion factor used for predicted
nitrogenvalues (conversion from cg/kg to g/kg) - Corrected the conversion factor used for uncertainty in
bdodandnitrogen(SoilGrids uncertainty layer always uses factor of 10 to create integers) - Improved error handling
- Added
progressandverbosearguments for text progress bar and additional message output - Added support for {sf} and {sp} POINT geometry inputs
- Corrected the conversion factor used for predicted
- Add
get_SDA_coecoclass()SOD-style method for mapunit/component level summaries of ecological site and other vegetation class information
Natural Resources - Soil and Land
- R
Published by brownag over 4 years ago
soilDB - CRAN Release 2.6.3
soilDB 2.6.3 (2021-07-23)
SDA_query()and all functions that callSDA_query()get proper column class handling (related to #190), however:- be careful with the use of CAST(): unknown datatypes may not be correctly interpreted
- previous column classes that were incorrectly guessed by
type.convert()may have changed (e.g.component.wei)
SDA_spatialQuery()can now be used to return soil survey area symbols or geometry usingwhat="areasymbol"orwhat="sapolygon", respectively- Added new columns to soil classification ("SC") table result of
get_soilseries_from_NASIS(); now including taxonomic mineralogy class which may contain multiple parts for series with strongly contrasting control sections - Updates to
get_SDA_*()methods- Extends
get_SDA_property(property = ...)andget_SDA_interpretation(rulename = ...)vectorization over property/rulename to work with any aggregation method.- Now supports: Dominant Condition, Min, Max, Dominant Component, Weighted Average
- Add
query_stringargument (default:FALSE). Set asTRUEto skip submitting query to SDA, instead returning a string of the query that would have been sent instead of data.frame result get_SDA_property: better handling of NULL, miscellaneous areas, and property-specific weighting- Remove
ISNULL(x, 0)logic that affected weighted averages in presence of missing data - Conditional calculation of horizon weights considering NULL values for requested properties (unique weights for each property)
- New default argument
include_minors=FALSEincludes only components wheremajcompflag = 'Yes'in result - New default argument
miscellaneous_areas=FALSEremoves miscellaneous land typescompkindvalues from result - Organic and bedrock layers are no longer removed from "Weighted Average", "MIN" or "MAX" aggregations
- Remove
get_SDA_interpretation: added argument not_rated_value with default value ofNAto set "not rated"" values across methods/queries. For backwards compatibility with original SQL usenot_rated_value = 99.0- Standardizing MUKEY column name (and other keys) as lowercase in results
- More informative error messages for bad input / arguments inconsistent with specified method
- Extends
- Thanks to @hammerly who pointed out weighted averaging of NASIS
phlabresultswasn't working as expected and for highlighting some more improvements (https://github.com/ncss-tech/soilDB/issues/192) get_OSD()TXT and HTML formats now supported (in addition to JSON) through a common function interface- Added
get_NASIS_table_key_by_name()get_NASIS_fkey_by_name(),get_NASIS_pkeyref_by_name(),get_NASIS_pkey_by_name(),get_NASIS_table_name_by_purpose()methods for helping get information on primary/foreign keys and thematic groups of NASIS tables (useful for creating SQLite/external snapshots of NASIS tables) get_mapunit_from_NASIS(),get_legend_from_NASIS()andget_lmuaoverlap_from_NASIS()now works for "MLRA Survey Area"areatypenameand no longer is limited by constraints onlegendsuituseormustatus
Natural Resources - Soil and Land
- R
Published by brownag over 4 years ago
soilDB - CRAN Release 2.6.2
soilDB 2.6.2 (2021-05-16)
- Added
formativeElementargument totaxaExtent()(SoilWeb taxon extent function)- "Formative elements" are derived from the dictionary provided by the {SoilTaxonomy} package (https://cran.r-project.org/package=SoilTaxonomy)
- For example:
taxaExtent("abruptic", level = 'subgroup', formativeElement = TRUE)will get an 800m grid (for SSURGO data in CONUS) showing extent of taxa that have "abruptic" in subgroup-level taxon name
fetchNASIS(from="pedons")result now contains the"taxclname"(full family-level taxon name) field from the NASISpedontable; this value is calculated based on contents ofpetaxhistorychild tableget_SDA_interpretationandget_SDA_propertynow support aggregationmethod="NONE"allowing for returning properties, classes and ratings for individual components or horizons (https://github.com/ncss-tech/soilDB/pull/181)ISSR800.wcsandmukey.wcsnow return a result that inherits fromtry-error(and a message) if the Web Coverage Service query fails
Natural Resources - Soil and Land
- R
Published by brownag over 4 years ago
soilDB - CRAN Release 2.6.1
This marks the acceptance of CRAN Release 2.6.1 (submitted https://github.com/ncss-tech/soilDB/commit/0c2085c700d73a5f72cf9aa9864f404beffa33a5, which is too old to be tagged in this release).
Updates by patch version since last CRAN release.
soilDB 2.6.1 (2021-04-07)
- Connections to local NASIS and various MS Access databases now use
DBIandodbc, replacingRODBC - New methods
dbConnectNASISanddbQueryNASISfor NASIS access with read-only credentials, fetching query results, and closing the DBIConnection upon completion - NASIS methods use
dsnargument to specify a local "static" SQLite file containing NASIS tables, or custom DBIConnection to a database with NASIS schema- Default
dsn = NULLuses"nasis_local"ODBC connection to local NASIS SQL Server
- Default
- Horizon depth logic checking is now done with
aqp::checkHzDepthLogic(), powered by {data.table} - Added several new SDA query methods based on https://github.com/ncss-tech/ssurgoOnDemand by @jneme910 and @cferguso:
get_SDA_property,get_SDA_interpretation,get_SDA_muaggatt,get_SDA_hydric,get_SDA_pmgroupname
soilDB 2.6.0 (2021-02-18)
OSDquerygets a new argument (everything) for searching the entire documentfetchNASIS(..., rmHzErrors=TRUE)-- spurious removals of data due to missing "extended" records.fetchNASISnow usesaqp::horizons<-after building a minimalSoilProfileCollectionfrom NASIS site and horizon tables. This allowsaqpintegrity methods to trigger where needed--preventing unintentional re-ordering or removals of "valid" horizon data.
Natural Resources - Soil and Land
- R
Published by brownag almost 5 years ago
soilDB - CRAN Release 2.5.9
soilDB 2.5.9 (2021-01-26)
HenryTimeLinemoved to {sharpshootR} package- new functions
mukey.wcs()andISSR800.wcs()for hitting web coverage service (WCS) for gSSURGO, gNATSGO, and ISSR-800 grids - new function
ROSETTA()for accessing the new ROSETTA model API (c/o Todd Skaggs, USDA-ARS) fetchOSD(..., extended=TRUE)gains geographically associated soils, parsed from OSD (thanks AGB)fetchSDA_spatialnow can return soil survey area polygons usinggeom.src = "sapolygon"withxas a vector of area symbols (areasymbol) or legend keys (lkey). Forsapolygonresults, themethodandadd.fieldarguments work the same as formupolygon, only now both geometries can be returned with fields from thelegendtable.fetchSDA_spatialnow can return STATSGOgsmmupolygongeometry withdb = "STATSGO"; these data are linked tomapunitand (national)legendjust likemupolygon.
Natural Resources - Soil and Land
- R
Published by brownag about 5 years ago
soilDB - soilDB 2.5.8
Updates since last CRAN release on 2020-01-29.
soilDB 2.5.8 (2020-10-20)
fetchNASIS/soilDB:::.rockFragmentSievenow uses fragment RV,soilDB:::.sieveuses<operator (https://github.com/ncss-tech/soilDB/issues/1)fetchKSSL(..., returnMorphologicData=TRUE)now returns redoximorphic features by horizon- new function
taxaExtentreturns 800m gridded taxonomic grids for CONUS seriesExtentcan now return 800m gridded series extents for CONUSSDA_spatialQuerycan now retrieve SSURGO and STATSGO geometry c/o dschlaep (https://github.com/ncss-tech/soilDB/issues/141)- new import: data.table; beginning to implement data.table-aware methods
soilDB 2.5.7 (2020-09-03)
- add
fetchGDBfor querying tabular data from SSURGO/gNATSGO/STATSGO File Geodatabases - add
get_NOAA_GHCND()andget_NOAA_stations_nearXY()for batch queries of NOAA Daily Climate Data (requires free API token) - bug fix for
fetchSDA_spatialwithchunk.size > 1resulting in duplicate data in result - major improvements to
fetchSDA_spatialto handle queries that exceed JSON Serialization Limit - add
fetchSoilGridsfor point data queries to SoilGrids v2 API with SoilProfileCollection output
soilDB 2.5.6 (2020-06-16)
- bug fixes in
fetchKSSLrelated to vectorization, all arguments vectorized except for bbox KSSL_VG_modeloutput cleaned-up, now returns phi -> theta function
soilDB 2.5.3 (2020-03-22)
fetchKSSLis now fully vectorized and builds on new SoilWeb JSON API
soilDB 2.5.2 (2020-02-05)
- add
get_concentrations_from_NASIS_db()andget_phfmp_from_NASIS_db()for fetching Pedon Horizon Concentrations and Field Measured Properties from NASIS local database
Natural Resources - Soil and Land
- R
Published by brownag over 5 years ago
soilDB - soilDB 2.5
soilDB 2.5
This is a release of soilDB with new functionality and documentation, updates to conform with aqp 1.19, as well as bug-fixes and other quality-of-life enhancements.
Notably: we are back on CRAN. Tests and examples have been altered to minimize likelihood of failure on CRAN check farm machines, which has been an on-going issue. By making tests that contact remote APIs skip if missing the nasis_local ODBC connection, we can effectively filter tests to run only on the local (work) machine.
Recent Changes
soilDB 2.5 (2020-01-23)
- CRAN release
- simplifyColorData and mix_and_clean_colors always use CIELAB colorspace for weighted averages, and best-available metric for transformation to Munsell notation
- fetchSDA_spatial - new fetch function that simplifies getting spatial data associated with a vector of mukey or nationalmusym. The function has options for customizing result attribute table and is designed to automatically use makeChunks() to prevent timeout on large queries.
- aqp::test_hz_logic is now deprecated -- refactored affected fetch functions
soilDB 2.4.3 (2020-01-07)
- surface water depth added to fetchNASIS_pedons()
- fetchNASIS() has @restrictions set automaticlly if data are populated
- new function for accessing pedon RMF in local NASIS DB: get_RMF_from_NASIS_db()
Natural Resources - Soil and Land
- R
Published by brownag about 6 years ago
soilDB - soilDB 2.4.1
This is a maintenance release of soilDB addressing bug-fixes, small enhancements, and documentation gaps. Dependencies have been reduced by moving some packages from IMPORTS to SUGGESTS.
Recent Changes
soilDB 2.3.9 (2019-07-25)
- SDA_query() no longer writes temporary files, c/o suggestion from Kyle Bocinsky (#106 / #108)
- fetchOSD() gets a sanity check to protect against going over GET request limits
- makeChunks() added to util functions, useful for splitting data before sending API calls
soilDB 2.3.8 (2019-03-22)
- loafercreek, gopheridge, and mineralking sample data have been updated with valid place-holder in @sp
- bug fix for SDA_query() related to multi-line records (https://github.com/ncss-tech/soilDB/issues/28)
soilDB 2.3.7 (2019-03-12)
- sharpshootR added to SUGGESTS
- fetchHenry() and fetchSCAN() now include water year/day (Oct 1 -- Sep 30)
- HenryTimeLine() convenience function added
- bug fix in fetchOSD(..., extended=TRUE) when no climate data available
- bug fix in SDA_query()
soilDB 2.3.6 (2019-02-12)
- simplifyFragmentData() and related functions now 4-5x faster
- fetchOSD() now returns metadata when extended=TRUE
Natural Resources - Soil and Land
- R
Published by dylanbeaudette over 6 years ago
soilDB - soilDB 2.3
The source code for soilDB 2.3 has posted to CRAN, expecting binary packages later this week.
The soilDB package contains a convenient interface to many USDA-NCSS soil databases, including:
- SDA: SSURGO/STATSGO
- NASIS
- KSSL via SoilWeb
- An approximate "soil series" database via SoilWeb
- Henry Soil Temperature and Water Database
- SCAN/SNOTEL
- CDEC
New / Updated Documentation
- HTML manual pages
- draft tutorial on the use of
siblings() - draft document on querying soil series data
- draft document on soil series climate summaries
- draft document on competing soil series
Enhancements
- new function for exploring soil series co-occurrence data: siblings()
- fetchOSD gets an overhaul, new API and features
- fetchOSD(..., extended=TRUE) gets competing soil series
- new function for spatial queries: SDA_spatialQuery(), still needs testing and documentation
- experimental interface to SoillWeb OSD fulltext search: OSDquery()
- get_mutext_from_NASIS_db() added for extraction of map unit text notes
- exposing some of the internal functionality used by fetchHenry
Bug Fixes
- numerous bug-fixes in simplifyFragmentData()
- better bug-fix for fetchSCAN and missing data
- added more SCAN/SNOTEL metadata
- generalized local NASIS ODBC authentication, should work on windows 7, 8, 10
- bug fix for subtle change in how SCAN data are returned from web service
- bug fix for simplfyFragmentData(, nullFragsAreZero=FALSE), still more work to do
- bug fix for simplfyFragmentData() when fragment volume > 100%
Misc. Changes
- removed old sample gSSURGO chunk and related documentation
- updated
loafercreekandgopheridgesample datasets and manual page to reflect latest fetchNASIS
Natural Resources - Soil and Land
- R
Published by dylanbeaudette about 7 years ago