[PATCH] gnu: Add r-gtsummary and dependencies

  • Open
  • quality assurance status badge
Details
3 participants
  • Sebastian Gibb
  • Ricardo Wurmus
  • Simon Tournier
Owner
unassigned
Submitted by
Sebastian Gibb
Severity
normal
S
S
Sebastian Gibb wrote on 16 Nov 2023 15:07
(address . guix-patches@gnu.org)(name . Sebastian Gibb)(address . mail@sebastiangibb.de)
9610e6bc1c5bd70ed3e66b491603462f98b87cdf.1700143657.git.mail@sebastiangibb.de
Change-Id: I8925668063ca53b91bec49788fbed3df5eb2c2fc
---
gnu/packages/cran.scm | 211 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 211 insertions(+)

Toggle diff (240 lines)
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 221a81612c..711308d36c 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -1061,6 +1061,159 @@ (define-public r-googlevis
the output locally.")
(license license:gpl2+)))
+(define-public r-reactr
+ (package
+ (name "r-reactr")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "reactR" version))
+ (sha256
+ (base32 "14pi2wc25qa9q0hp8jby07798l53phyj1zifj46fg2pjq8vkz7p7"))))
+ (properties `((upstream-name . "reactR")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-htmltools))
+ (native-inputs (list esbuild r-knitr))
+ (home-page "https://github.com/react-R/reactR")
+ (synopsis "React Helpers")
+ (description
+ "Make it easy to use React in R with htmlwidget scaffolds, helper dependency
+functions, an embedded Babel transpiler', and examples.")
+ (license license:expat)))
+
+(define-public r-reactable
+ (package
+ (name "r-reactable")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "reactable" version))
+ (sha256
+ (base32 "1wkamzyyl3k3772n5g4rjklkkhdb07jiax064r9alnnq5nzfdaml"))))
+ (properties `((upstream-name . "reactable")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-digest r-htmltools r-htmlwidgets r-jsonlite
+ r-reactr))
+ (home-page "https://glin.github.io/reactable/")
+ (synopsis "Interactive Data Tables for R")
+ (description
+ "Interactive data tables for R, based on the React Table @code{JavaScript}
+library. Provides an HTML widget that can be used in R Markdown or Quarto
+documents, Shiny applications, or viewed from an R console.")
+ (license license:expat)))
+
+(define-public r-juicyjuice
+ (package
+ (name "r-juicyjuice")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "juicyjuice" version))
+ (sha256
+ (base32 "0ap1nsyihlagc1yqvwr2x9s16kzb3c8azfi50mzv95275a5l3xb4"))))
+ (properties `((upstream-name . "juicyjuice")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-v8))
+ (home-page "https://github.com/rich-iannone/juicyjuice")
+ (synopsis "Inline CSS Properties into HTML Tags Using 'juice'")
+ (description
+ "There are occasions where you need a piece of HTML with integrated styles. A
+prime example of this is HTML email. This transformation involves moving the
+CSS and associated formatting instructions from the style block in the head of
+your document into the body of the HTML. Many prominent email clients require
+integrated styles in HTML email; otherwise a received HTML email will be
+displayed without any styling. This package will quickly and precisely perform
+these CSS transformations when given HTML text and it does so by using the
+@code{JavaScript} juice library.")
+ (license license:expat)))
+
+(define-public r-gt
+ (package
+ (name "r-gt")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "gt" version))
+ (sha256
+ (base32 "0gkfqy7n0pv1cz4vrshl2w07c0ykipi5rvp46nyvlcd17qq5z2kh"))))
+ (properties `((upstream-name . "gt")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-base64enc
+ r-bigd
+ r-bitops
+ r-cli
+ r-commonmark
+ r-dplyr
+ r-fs
+ r-glue
+ r-htmltools
+ r-htmlwidgets
+ r-juicyjuice
+ r-magrittr
+ r-markdown
+ r-reactable
+ r-rlang
+ r-sass
+ r-scales
+ r-tibble
+ r-tidyselect
+ r-xml2))
+ (home-page "https://gt.rstudio.com")
+ (synopsis "Easily Create Presentation-Ready Display Tables")
+ (description
+ "Build display tables from tabular data with an easy-to-use set of functions.
+With its progressive approach, we can construct display tables with a cohesive
+set of table parts. Table values can be formatted using any of the included
+formatting functions. Footnotes and cell styles can be precisely added through
+a location targeting system. The way in which gt handles things for you means
+that you don't often have to worry about the fine details.")
+ (license license:expat)))
+
+(define-public r-gtsummary
+ (package
+ (name "r-gtsummary")
+ (version "1.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "gtsummary" version))
+ (sha256
+ (base32 "02jbsdv8wwncnrmqmf12pz3ld759s8ll5dl5rrxv8ad6qgqjbhnx"))))
+ (properties `((upstream-name . "gtsummary")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-broom
+ r-broom-helpers
+ r-cli
+ r-dplyr
+ r-forcats
+ r-glue
+ r-gt
+ r-knitr
+ r-lifecycle
+ r-purrr
+ r-rlang
+ r-stringr
+ r-tibble
+ r-tidyr
+ r-vctrs))
+ (native-inputs (list r-knitr))
+ (home-page "https://github.com/ddsjoberg/gtsummary")
+ (synopsis "Presentation-Ready Data Summary and Analytic Result Tables")
+ (description
+ "This package creates presentation-ready tables summarizing data sets, regression
+models, and more. The code to create the tables is concise and highly
+customizable. Data frames can be summarized with any function, e.g. mean(),
+median(), even user-written functions. Regression models are summarized and
+include the reference rows for categorical variables. Common regression models,
+such as logistic regression and Cox proportional hazards regression, are
+automatically identified and the tables are pre-filled with appropriate column
+headers.")
+ (license license:expat)))
+
(define-public r-gson
(package
(name "r-gson")
@@ -1973,6 +2126,32 @@ (define-public r-clipr
the system clipboards.")
(license license:gpl3)))
+(define-public r-bigd
+ (package
+ (name "r-bigd")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "bigD" version))
+ (sha256
+ (base32 "0pzzqqazn1nv2b613vzdyhxvr454lyqq8235jydia6r3k86fpadw"))))
+ (properties `((upstream-name . "bigD")))
+ (build-system r-build-system)
+ (home-page "https://github.com/rich-iannone/bigD")
+ (synopsis "Flexibly Format Dates and Times to a Given Locale")
+ (description
+ "Format dates and times flexibly and to whichever locales make sense. Parses
+dates, times, and date-times in various formats (including string-based ISO 8601
+constructions). The formatting syntax gives the user many options for
+formatting the date and time output in a precise manner. Time zones in the
+input can be expressed in multiple ways and there are many options for
+formatting time zones in the output as well. Several of the provided helper
+functions allow for automatic generation of locale-aware formatting patterns
+based on date/time skeleton formats and standardized date/time formats with
+varying specificity.")
+ (license license:expat)))
+
(define-public r-clock
(package
(name "r-clock")
@@ -8512,6 +8691,38 @@ (define-public r-broom
provides a one-row summary of model-level statistics.")
(license license:expat)))
+(define-public r-broom-helpers
+ (package
+ (name "r-broom-helpers")
+ (version "1.14.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "broom.helpers" version))
+ (sha256
+ (base32 "14vaqxv12yrvqllp8552nx68wk2qfjcy1iy7bajkspgdpwsjzhfd"))))
+ (properties `((upstream-name . "broom.helpers")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-broom
+ r-cli
+ r-dplyr
+ r-labelled
+ r-lifecycle
+ r-purrr
+ r-rlang
+ r-stringr
+ r-tibble
+ r-tidyr))
+ (native-inputs (list r-knitr))
+ (home-page "https://larmarange.github.io/broom.helpers/")
+ (synopsis "Helpers for Model Coefficients Tibbles")
+ (description
+ "This package provides suite of functions to work with regression model
+broom::tidy() tibbles. The suite includes functions to group regression model
+terms by variable, insert reference and header rows for categorical variables,
+add variable labels, and more.")
+ (license license:gpl3+)))
+
(define-public r-recipes
(package
(name "r-recipes")

base-commit: 23627b1706af25a0a30b96b9169a3495279aff1b
--
2.39.2
S
S
Simon Tournier wrote on 12 Jan 09:51 +0100
87cyu7ylx5.fsf@gmail.com
Hi,

(Sorry for the late reply.)

On Thu, 16 Nov 2023 at 15:07, Sebastian Gibb via Guix-patches via <guix-patches@gnu.org> wrote:
Toggle quote (5 lines)
> Change-Id: I8925668063ca53b91bec49788fbed3df5eb2c2fc
> ---
> gnu/packages/cran.scm | 211 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 211 insertions(+)

Thanks for your contributions. From a first look, they look good to me
but it would help if you could:

1. Split all the additions to atomic commits – one package per commit:

+(define-public r-reactr
+(define-public r-reactable
+(define-public r-juicyjuice
+(define-public r-gt
+(define-public r-gtsummary
+(define-public r-bigd
+(define-public r-broom-helpers

Hence 7 commits; :-)

2. Write compliant commit messages, as:

Toggle snippet (5 lines)
gnu: Add r-reactr.

* gnu/packages/cran.scm (r-reactr): New variable.

Could you send v2 (reroll-count=2)?

Cheers,
simon
R
R
Ricardo Wurmus wrote on 30 Jan 17:16 +0100
[PATCH] gnu: Add r-gtsummary and dependencies
(address . 67229@debbugs.gnu.org)
878r46hjtt.fsf@elephly.net
Hi,

the r-reactr and r-reactable packages contain a lot of minified
JavaScript, which is why we don’t have them in the default Guix channel.
We do have these packages in the guix-science channel[1].

You could add r-gtsummary there until someone makes the effort to find
matching source code for all the bundled minified JavaScript in those
packages.


--
Ricardo
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 67229@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 67229
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch