From d04bac001217855b4e9a1490a35bef3325441b55 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Fri, 21 Jul 2023 08:24:12 +0200 Subject: Maintenance prompted by email from CRAN - Fix an improper use of 'packageVersion' - Update .Rbuildignore - Fix a link in the README - Static documentation rebuilt by pkgdown::build_site() --- .Rbuildignore | 1 + DESCRIPTION | 6 +- R/drcfit.R | 2 +- README.html | 205 +++++++++++----- README.md | 2 +- check.log | 19 +- docs/404.html | 111 +++------ docs/authors.html | 132 ++++------- docs/bootstrap-toc.css | 60 +++++ docs/bootstrap-toc.js | 159 +++++++++++++ docs/index.html | 67 +++--- docs/pkgdown.css | 208 +++++++++++++---- docs/pkgdown.js | 9 +- docs/pkgdown.yml | 7 +- docs/reference/IM1xIPC81.html | 285 ++++++++++------------ docs/reference/IM1xVibrio.html | 375 ++++++++++++++--------------- docs/reference/Rplot001.png | Bin 0 -> 1011 bytes docs/reference/Rplot002.png | Bin 0 -> 13725 bytes docs/reference/XY.html | 126 +++------- docs/reference/antifoul.html | 269 +++++++++------------ docs/reference/checkcontrols.html | 216 ++++++----------- docs/reference/checkexperiment.html | 186 +++++---------- docs/reference/checksubstance.html | 237 +++++++------------ docs/reference/drcfit.html | 369 +++++++++++++---------------- docs/reference/drdata.html | 263 +++++++-------------- docs/reference/drfit.html | 455 ++++++++++++++++-------------------- docs/reference/drplot-1.png | Bin 28331 -> 45593 bytes docs/reference/drplot-2.png | Bin 26640 -> 41522 bytes docs/reference/drplot.html | 369 +++++++++++------------------ docs/reference/index.html | 200 ++++------------ docs/reference/linlogitf.html | 177 +++++--------- docs/reference/pyrithione.html | 134 +++-------- docs/sitemap.xml | 57 +++++ 33 files changed, 2096 insertions(+), 2610 deletions(-) create mode 100644 docs/bootstrap-toc.css create mode 100644 docs/bootstrap-toc.js create mode 100644 docs/reference/Rplot001.png create mode 100644 docs/reference/Rplot002.png create mode 100644 docs/sitemap.xml diff --git a/.Rbuildignore b/.Rbuildignore index a090090..cbd0474 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -1,3 +1,4 @@ +^_pkgdown\.yml$ ^GNUmakefile ^README\.html out$ diff --git a/DESCRIPTION b/DESCRIPTION index 2c09951..8cc30e0 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: drfit -Version: 0.7.3 -Date: 2018-12-12 +Version: 0.7.4 +Date: 2023-07-21 Title: Dose-Response Data Evaluation Authors@R: person("Johannes", "Ranke", email = "jranke@uni-bremen.de", role = c("aut", "cre"), @@ -23,6 +23,6 @@ Encoding: UTF-8 License: GPL (>= 2) LazyLoad: yes LazyData: yes -URL: https://pkgdown.jrwb.de/drfit +URL: https://pkgdown.jrwb.de/drfit/ NeedsCompilation: no RoxygenNote: 6.0.1 diff --git a/R/drcfit.R b/R/drcfit.R index 64426b9..6ba071f 100644 --- a/R/drcfit.R +++ b/R/drcfit.R @@ -29,7 +29,7 @@ drcfit <- function(data, chooseone=TRUE, splitted <- split(data,data$substance) # The indexing of the results of the ED50 function changed with drc 3.0.1 - if (packageVersion("drc") > 3) { + if (packageVersion("drc") > "3") { ED50_row_index = "e:1:50" EDx_row_index_prefix = "e:1" } else { diff --git a/README.html b/README.html index 0a5165d..702e669 100644 --- a/README.html +++ b/README.html @@ -1,26 +1,36 @@ - + - + -Readme file for the drfit R package +README - + - + - + code{white-space: pre-wrap;} + span.smallcaps{font-variant: small-caps;} + span.underline{text-decoration: underline;} + div.column{display: inline-block; vertical-align: top; width: 50%;} + div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} + ul.task-list{list-style: none;} + .display.math{display: block; text-align: center; margin: 0.5rem auto;} + + + + + + + + + + +
- + - - -
+
+ +
-
- +
+ + - - diff --git a/docs/authors.html b/docs/authors.html index 2a8b73a..e975d44 100644 --- a/docs/authors.html +++ b/docs/authors.html @@ -1,62 +1,12 @@ - - - - - - - -Authors • drfit - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Authors and Citation • drfit - + + - - - - -
-
-
- -
+
- @@ -114,22 +70,20 @@ -
- +
- - + + diff --git a/docs/bootstrap-toc.css b/docs/bootstrap-toc.css new file mode 100644 index 0000000..5a85941 --- /dev/null +++ b/docs/bootstrap-toc.css @@ -0,0 +1,60 @@ +/*! + * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) + * Copyright 2015 Aidan Feldman + * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ + +/* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */ + +/* All levels of nav */ +nav[data-toggle='toc'] .nav > li > a { + display: block; + padding: 4px 20px; + font-size: 13px; + font-weight: 500; + color: #767676; +} +nav[data-toggle='toc'] .nav > li > a:hover, +nav[data-toggle='toc'] .nav > li > a:focus { + padding-left: 19px; + color: #563d7c; + text-decoration: none; + background-color: transparent; + border-left: 1px solid #563d7c; +} +nav[data-toggle='toc'] .nav > .active > a, +nav[data-toggle='toc'] .nav > .active:hover > a, +nav[data-toggle='toc'] .nav > .active:focus > a { + padding-left: 18px; + font-weight: bold; + color: #563d7c; + background-color: transparent; + border-left: 2px solid #563d7c; +} + +/* Nav: second level (shown on .active) */ +nav[data-toggle='toc'] .nav .nav { + display: none; /* Hide by default, but at >768px, show it */ + padding-bottom: 10px; +} +nav[data-toggle='toc'] .nav .nav > li > a { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 30px; + font-size: 12px; + font-weight: normal; +} +nav[data-toggle='toc'] .nav .nav > li > a:hover, +nav[data-toggle='toc'] .nav .nav > li > a:focus { + padding-left: 29px; +} +nav[data-toggle='toc'] .nav .nav > .active > a, +nav[data-toggle='toc'] .nav .nav > .active:hover > a, +nav[data-toggle='toc'] .nav .nav > .active:focus > a { + padding-left: 28px; + font-weight: 500; +} + +/* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */ +nav[data-toggle='toc'] .nav > .active > ul { + display: block; +} diff --git a/docs/bootstrap-toc.js b/docs/bootstrap-toc.js new file mode 100644 index 0000000..1cdd573 --- /dev/null +++ b/docs/bootstrap-toc.js @@ -0,0 +1,159 @@ +/*! + * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) + * Copyright 2015 Aidan Feldman + * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ +(function() { + 'use strict'; + + window.Toc = { + helpers: { + // return all matching elements in the set, or their descendants + findOrFilter: function($el, selector) { + // http://danielnouri.org/notes/2011/03/14/a-jquery-find-that-also-finds-the-root-element/ + // http://stackoverflow.com/a/12731439/358804 + var $descendants = $el.find(selector); + return $el.filter(selector).add($descendants).filter(':not([data-toc-skip])'); + }, + + generateUniqueIdBase: function(el) { + var text = $(el).text(); + var anchor = text.trim().toLowerCase().replace(/[^A-Za-z0-9]+/g, '-'); + return anchor || el.tagName.toLowerCase(); + }, + + generateUniqueId: function(el) { + var anchorBase = this.generateUniqueIdBase(el); + for (var i = 0; ; i++) { + var anchor = anchorBase; + if (i > 0) { + // add suffix + anchor += '-' + i; + } + // check if ID already exists + if (!document.getElementById(anchor)) { + return anchor; + } + } + }, + + generateAnchor: function(el) { + if (el.id) { + return el.id; + } else { + var anchor = this.generateUniqueId(el); + el.id = anchor; + return anchor; + } + }, + + createNavList: function() { + return $(''); + }, + + createChildNavList: function($parent) { + var $childList = this.createNavList(); + $parent.append($childList); + return $childList; + }, + + generateNavEl: function(anchor, text) { + var $a = $(''); + $a.attr('href', '#' + anchor); + $a.text(text); + var $li = $('
  • '); + $li.append($a); + return $li; + }, + + generateNavItem: function(headingEl) { + var anchor = this.generateAnchor(headingEl); + var $heading = $(headingEl); + var text = $heading.data('toc-text') || $heading.text(); + return this.generateNavEl(anchor, text); + }, + + // Find the first heading level (`

    `, then `

    `, etc.) that has more than one element. Defaults to 1 (for `

    `). + getTopLevel: function($scope) { + for (var i = 1; i <= 6; i++) { + var $headings = this.findOrFilter($scope, 'h' + i); + if ($headings.length > 1) { + return i; + } + } + + return 1; + }, + + // returns the elements for the top level, and the next below it + getHeadings: function($scope, topLevel) { + var topSelector = 'h' + topLevel; + + var secondaryLevel = topLevel + 1; + var secondarySelector = 'h' + secondaryLevel; + + return this.findOrFilter($scope, topSelector + ',' + secondarySelector); + }, + + getNavLevel: function(el) { + return parseInt(el.tagName.charAt(1), 10); + }, + + populateNav: function($topContext, topLevel, $headings) { + var $context = $topContext; + var $prevNav; + + var helpers = this; + $headings.each(function(i, el) { + var $newNav = helpers.generateNavItem(el); + var navLevel = helpers.getNavLevel(el); + + // determine the proper $context + if (navLevel === topLevel) { + // use top level + $context = $topContext; + } else if ($prevNav && $context === $topContext) { + // create a new level of the tree and switch to it + $context = helpers.createChildNavList($prevNav); + } // else use the current $context + + $context.append($newNav); + + $prevNav = $newNav; + }); + }, + + parseOps: function(arg) { + var opts; + if (arg.jquery) { + opts = { + $nav: arg + }; + } else { + opts = arg; + } + opts.$scope = opts.$scope || $(document.body); + return opts; + } + }, + + // accepts a jQuery object, or an options object + init: function(opts) { + opts = this.helpers.parseOps(opts); + + // ensure that the data attribute is in place for styling + opts.$nav.attr('data-toggle', 'toc'); + + var $topContext = this.helpers.createChildNavList(opts.$nav); + var topLevel = this.helpers.getTopLevel(opts.$scope); + var $headings = this.helpers.getHeadings(opts.$scope, topLevel); + this.helpers.populateNav($topContext, topLevel, $headings); + } + }; + + $(function() { + $('nav[data-toggle="toc"]').each(function(i, el) { + var $nav = $(el); + Toc.init($nav); + }); + }); +})(); diff --git a/docs/index.html b/docs/index.html index 1b85668..3aead2a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -6,10 +6,11 @@ Dose-Response Data Evaluation • drfit - - - - + + + + + - - + + +
    -
    - - +
    + +

    A somewhat outdated package of basic and easy-to-use functions for fitting dose-response curves to continuous dose-response data, calculating some toxicological parameters and plotting the results. Please consider using the more powerful and actively developed ‘drc’ package.

    Functions that are fitted are the cumulative density function of the log-normal distribution (‘probit’ fit), of the logistic distribution (‘logit’ fit), of the Weibull distribution (‘weibull’ fit) and a linear-logistic model (‘linlogit’ fit), derived from the latter, which is used to describe data showing stimulation at low doses (hormesis). In addition, functions checking, plotting and retrieving dose-response data retrieved from a database accessed via ‘odbc’ are included. As an alternative to the original fitting methods, the algorithms from the ‘drc’ package can be used.

    More details can be found in the function referenc.

    -