{"id":20723,"name":"CSHShydRology","description":"This is a collection of R functions used by the Canadian Association Society for Hydrological Sciences.","url":"https://github.com/CSHS-CWRA/CSHShydRology","last_synced_at":"2026-04-10T16:03:11.426Z","repository":{"id":26940147,"uuid":"106497514","full_name":"CSHS-CWRA/CSHShydRology","owner":"CSHS-CWRA","description":"Main package","archived":false,"fork":false,"pushed_at":"2025-09-10T20:19:15.000Z","size":6951,"stargazers_count":36,"open_issues_count":8,"forks_count":41,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-10-25T06:07:20.846Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CSHS-CWRA.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-10-11T02:50:21.000Z","updated_at":"2025-08-28T19:19:58.000Z","dependencies_parsed_at":"2024-01-08T00:52:57.205Z","dependency_job_id":"d6c10059-ae34-46ff-94b0-84ebfb84411a","html_url":"https://github.com/CSHS-CWRA/CSHShydRology","commit_stats":{"total_commits":285,"total_committers":6,"mean_commits":47.5,"dds":0.3052631578947368,"last_synced_commit":"d2e92a1f8c2efdadc692e0ce6efaa2c5b3e82bab"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/CSHS-CWRA/CSHShydRology","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CSHS-CWRA","download_url":"https://codeload.github.com/CSHS-CWRA/CSHShydRology/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286079811,"owners_count":27282121,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-24T02:00:07.096Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"CSHS-CWRA","name":"Canadian Society for Hydrological Sciences","uuid":"38532892","kind":"organization","description":"","email":"cshs@cwra.org","website":"https://cwra.org/en/branches/affiliates/cshs-a","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/38532892?v=4","repositories_count":3,"last_synced_at":"2023-02-28T03:31:02.223Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/CSHS-CWRA","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-11T08:20:40.880Z","updated_at":"2023-02-28T03:31:02.226Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CSHS-CWRA","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CSHS-CWRA/repositories"},"packages":[],"commits":{"id":1254533,"full_name":"CSHS-CWRA/CSHShydRology","default_branch":"master","total_commits":305,"total_committers":5,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":61.0,"dds":0.2754098360655738,"past_year_total_commits":20,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":20.0,"past_year_dds":0.0,"last_synced_at":"2025-11-20T19:53:03.234Z","last_synced_commit":"5d2615d5ccc3ec3eade39a83012592e1fbf1fdab","created_at":"2023-03-27T11:49:32.502Z","updated_at":"2025-11-20T19:53:03.196Z","committers":[{"name":"Kevin Shook","email":"kevin.shook@usask.ca","login":"KevinShook","count":221},{"name":"PaulWhitfield","email":"paul.h.whitfield@gmail.com","login":"PaulWhitfield","count":45},{"name":"rchlumsk","email":"rchlumsk@uwaterloo.ca","login":"rchlumsk","count":25},{"name":"boshek","email":"sam.albers@gmail.com","login":"boshek","count":10},{"name":"Victor Muñoz S","email":"vmunozs@gmail.com","login":"vmunozs","count":4}],"past_year_committers":[{"name":"Kevin Shook","email":"kshook@kshook.ca","login":"KevinShook","count":20}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-11-23T00:00:23.169Z","repositories_count":6115009,"commits_count":924873384,"contributors_count":36010120,"owners_count":1118752,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"CSHS-CWRA/CSHShydRology","html_url":"https://github.com/CSHS-CWRA/CSHShydRology","last_synced_at":"2025-10-24T16:40:10.888Z","status":"active","issues_count":19,"pull_requests_count":90,"avg_time_to_close_issue":12751762.5,"avg_time_to_close_pull_request":3791706.6951219514,"issues_closed_count":16,"pull_requests_closed_count":82,"pull_request_authors_count":10,"issue_authors_count":5,"avg_comments_per_issue":1.7894736842105263,"avg_comments_per_pull_request":0.7777777777777778,"merged_pull_requests_count":61,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":4,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":1.5,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-09T10:38:58.572Z","updated_at":"2025-10-24T16:40:10.888Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/CSHS-CWRA%2FCSHShydRology/issues","issue_labels_count":{"bug":3},"pull_request_labels_count":{},"issue_author_associations_count":{"CONTRIBUTOR":14,"NONE":3,"MEMBER":2},"pull_request_author_associations_count":{"CONTRIBUTOR":56,"MEMBER":24,"NONE":7,"COLLABORATOR":3},"issue_authors":{"KevinShook":14,"rchlumsk":2,"Jhydromet":1,"rywhale":1,"EAkomeah":1},"pull_request_authors":{"KevinShook":40,"rchlumsk":22,"PaulWhitfield":16,"MIsmlAhmed":3,"boshek":2,"vincenzocoia":2,"jwtrubil":2,"vmunozs-zz":1,"floodnetProject16":1,"JasonChiangIB":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-11-24T00:00:33.662Z","repositories_count":11765634,"issues_count":35499798,"pull_requests_count":115752635,"authors_count":11045984,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":4},"past_year_issue_authors":{},"past_year_pull_request_authors":{"KevinShook":3,"PaulWhitfield":1},"maintainers":[{"login":"rchlumsk","count":24,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rchlumsk"},{"login":"MIsmlAhmed","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/MIsmlAhmed"},{"login":"boshek","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/boshek"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":3,"IssueCommentEvent":6,"PushEvent":9,"PullRequestReviewEvent":1,"PullRequestEvent":3,"ForkEvent":2,"CreateEvent":2},"last_year":{"WatchEvent":3,"IssueCommentEvent":6,"PushEvent":9,"PullRequestReviewEvent":1,"PullRequestEvent":2,"ForkEvent":2,"CreateEvent":2}},"keywords":[],"dependencies":[{"ecosystem":"cran","filepath":"DESCRIPTION","sha":null,"kind":"manifest","created_at":"2022-08-07T12:01:19.107Z","updated_at":"2022-08-07T12:01:19.107Z","repository_link":"https://github.com/CSHS-CWRA/CSHShydRology/blob/master/DESCRIPTION","dependencies":[{"id":596668136,"package_name":"R","ecosystem":"cran","requirements":"\u003e= 4.0.0","direct":true,"kind":"depends","optional":false},{"id":596668137,"package_name":"fields","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668138,"package_name":"Kendall","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668139,"package_name":"lubridate","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668140,"package_name":"plotrix","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668141,"package_name":"timeDate","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668142,"package_name":"stringr","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668143,"package_name":"ggplot2","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668144,"package_name":"ggspatial","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668145,"package_name":"stats","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668146,"package_name":"raster","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668147,"package_name":"here","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668148,"package_name":"sf","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668149,"package_name":"dplyr","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668150,"package_name":"magrittr","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668151,"package_name":"httr","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668152,"package_name":"tidyhydat","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668153,"package_name":"whitebox","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668154,"package_name":"datasets","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":596668155,"package_name":"knitr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":596668156,"package_name":"testthat","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":596668157,"package_name":"rmarkdown","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":596668158,"package_name":"readr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false}]}],"score":5.393627546352361,"created_at":"2023-09-11T14:52:14.944Z","updated_at":"2026-04-10T16:03:11.427Z","avatar_url":"https://github.com/CSHS-CWRA.png","language":"HTML","category":"Natural Resources","sub_category":"Water Supply and Quality","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"[![lifecycle](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html) \n[![CRAN\nstatus](https://www.r-pkg.org/badges/version/CSHShydRology)](https://cran.r-project.org/package=CSHShydRology)\n[![Travis build status](https://travis-ci.org/CSHS-CWRA/CSHShydRology.svg?branch=master)](https://app.travis-ci.com/CSHS-CWRA/CSHShydRology)\n[![license](https://img.shields.io/badge/license-GPL3-lightgrey.svg)](https://choosealicense.com/)\n# CSHShydRology\n\n## Installing this package\nThe package may be downloaded directly from [CRAN](https://cran.r-project.org/package=CSHShydRology) with:\n``` r\ninstall.packages(\"CSHShydRology\")\n```\n\nPrevious versions of the package and manuals can be found by clicking on **releases**. The latest version of the package may also be installed directly from this repository. The procedure is\n1. Install the package \"devtools\" - you only have to do this once. Note that this will also install several dependancies\n2. Load the devtools library\n3. Install the package.\n\nThe commands are:\n``` R\nif (!require(devtools)) install.packages(\"devtools\")\nlibrary(devtools)\ninstall_github(\"CSHS-CWRA/CSHShydRology\")\n```\n\n## What is CSHS Hydrology?\nThis is an R package of functions used by Canadian hydrologists. The name is in recognition of the support provided by the Canadian Association Society for Hydrological Sciences (CSHS) which is an affiliated society of the Canadian Water Resources Association (CWRA). The CSHS website is https://cwra.org/en/affiliates-programs/cshs/.\n\n## Themes\nThis package contains functions which are grouped into themes. Currently the themes include:\n- Statistical hydrology (trend detection, data screening, frequency analysis, regionalization),\n- Basic data manipulations (input/conversion/adapter functions, missing data infilling),\n- Visualization (data visualization, standardized plotting functions),\n- Spatial hydrology (basin delineation, landscape data analysis, working with GIS),\n- Streamflow measurement analysis (rating curve analysis, velocity profiles, naturalization).\n\nOther themes, such as Network design/analysis (homogeneity assessment), and Ecohydrology (fisheries and ecological analysis) will also be added if there is interest.\n\n## Coding standards\n### General standards\nThe general coding standards are as specified in the Google R coding guide at https://google.github.io/styleguide/Rguide.xml.\n\n\n### External packages\nTo reduce errors, it is a good idea to reduce reliance on other packages as much as is possible. Please check through the functions already referenced in the **DESCRIPTION** file before adding additional functions. When it is necessary to add a reference to an additional package, please do the following:\nMake the package suggested, rather than required.\nMake a note in the function’s Roxygen documentation that the function uses the package.\nMake sure that the version number of the package is referenced properly.\nWhen more than one function requires a given package, it can be made a required packages.\n### Devtools\nTo make package development easier, we will use the package **devtools**, which provides several tools. This package is explained at https://github.com/hadley/devtools.\n#### Checking\nThe devtools check function will be used check each function for errors in syntax and style. Each function must pass the checks with zero warnings, errors or notes. Note that once you have loaded **devtools**, the check function can be accessed from a menu or from the build tab in Rstudio. It is also a good idea to manually run the **check** function from the command line, i.e. \n```R\nR CMD check\n```\nas this can catch other problems.\n#### Documentation\nAll functions need to be documented using the **Roxygen** package, which allows you to create the help files and documentation using comments in your function. The package is explained at https://cran.r-project.org/web/packages/roxygen2/vignettes/roxygen2.html. Rstudio has a very nice quick reference for **Roxygen** which you can access with Help|Roxygen Quick Reference.\nEach function must include the name of the authors(s). Please include your email address, and any publications that you want to reference.\nNote that the package itself also has a function. This contains documentation about the package as a whole, as well as settings which are used to create the package **NAMESPACE** file. Note that this means that the **NAMESPACE** file should _never_ be edited directly by anyone.\nWhen the package is compiled and tested, **Roxygen** will create a .Rd file for each function, the package, and for the included data files. These files should never be edited manually. If you want to check how your .Rd file will look, you can load it into Rstudio, which can render it.\n#### Vignettes\nVignettes are long form documentation which can be included in R packages. They can include long descriptions and worked examples, and are very useful to thoroughly explain functions to the users. The creation process is explained at http://r-pkgs.had.co.nz/vignettes.html. Even if you don’t write code, you can contribute to writing vignettes for functions.\n#### Testing\nThe testthat package allows unit tests to be created for each function. The function is executed, using specified data, and the results are compared to specified values. Unit tests should be used whenever possible, as they will identify problems caused by changes in upstream packages. The testthat package is explained in detail in http://r-pkgs.had.co.nz/tests.html.\n#### Test data\nEach function is required to have an example, which should be executable code. The only exception should be for code which is intended to access data which may not be available, such as data downloaded from a server.\nThe example, vignettes, and unit tests will all require test data sets. The data are stored in the /data folder of the package, and should be stored as .Rdata (binary) files, unless reading in data from another format is the point of the function. CRAN has a maximum limit of 1 MB for test data, so we will need to minimise the datasets we include. We should minimise the size of each test dataset and re-use the same data in as many functions as possible. If a function requires data output by another function, both functions can be included in the example.\nEach dataset needs to be documented in the same way as a function. The creation of datasets and their documentation is explained at http://r-pkgs.had.co.nz/data.html.\n\n## Working with GitHub\nThere is a lot of information available on using git and GitHub in R. The best starting point is https://support.rstudio.com/hc/en-us/articles/200532077-Version-Control-with-Git-and-SVN which shows how to integrate git and GitHub with RStudio.\n\n\n## Citation\n\nThe package citation may be generated with the following command in R.\n```{r}\ncitation(\"CSHShydRology\")\n```\n\n\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["hydrology"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/20723","html_url":"https://ost.ecosyste.ms/projects/20723"}