GithubHelp home page GithubHelp logo

gagolews / deepr Goto Github PK

View Code? Open in Web Editor NEW
85.0 4.0 1.0 107.43 MB

Deep R Programming (Open-Access Textbook)

Home Page: https://deepr.gagolewski.com/

License: Other

r data-science cran statistics scientific-computing scientific-visualization matrix-calculations tensor vector vectorization

deepr's Introduction

My research interests include machine learning, data aggregation and clustering, computational and applied statistics, and mathematical modelling (the science of science, sport, economics, social sciences, psychometrics, bibliometrics, etc.).

In my spare time, I write books for my students and develop open-source data analysis software.

Open-access textbooks

Software

Python packages

R packages

  • stringi – Fast and portable character string processing in R (one of the most often downloaded packages for R) (GitHub) (CRAN) (paper)
  • genieclust – Fast and robust hierarchical clustering with noise point detection (GitHub) (CRAN) (paper)
  • stringx – Drop-in replacements for base R string functions powered by stringi (GitHub) (CRAN)
  • realtest – Where expectations meet reality: Realistic unit testing in R (GitHub) (CRAN)
  • TurtleGraphics – Learn computer programming in R while having a jolly time! (GitHub) (CRAN)

Data

deepr's People

Contributors

gagolews avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

l-d-s

deepr's Issues

Include a glossary in the paper copy version of the book?

I know this is not an issue for HTML or PDF versions of the books, where a simple search might get one what they want.

But, while reading the paper copy of the book, I found it difficult to discover what I wanted because there was no glossary at the end of the book. This could be a nice addition for the next edition/print.

13.2.5 Many Figures In One Subplot -- Would `par(fig)` would be worth mentioning?

In https://deepr.gagolewski.com/chapter/250-graphics.html#many-figures-on-one-page-subplots

par(mfrow) and par(mfcol) is shown in detail. layout() is mentioned as a more complex alternative.

But would par(fig) be worth mentioning as well? Personally, I prefer it for complex plots instead of layout() as it allows the most precise and user-defined division of plot into segments while being much simpler than layout(). It is also the least documented one, since neither mfrow/mfcol parts of par mention it nor layout(), and many R tutorials or even advanced books are perhaps not even aware par(fig) exists.

What par(fig) does is that it defines plotting region in user coordinates. So par(fig = c(0, 1, 0, 0.5)) would be the bottom half of the plotting area. Which, for me, is much easier to think about than how to construct matrix layout for layout().

The wording may need an editing (ch. 2, 2.1.4, exercise 2.1, p. 17)

Hi, Marek!

«Exercise 2.1 Take a look at the manual page of seq_along and seq_len. Determine Having
seq3 at hand, determine whether they can easily be done without.» (p. 17).

It seems, that first «determine» is redundant.

P.S. Also the sentence as a whole seems incomplete: «they can be easily done without» <what?>.

I think the question is: whether the same functionality can be easily done just with seq() without implementation of the separate functions, am I right?

With best regards,
Dmitry Kapinos

section 9.3.2 Dollar "Nonstandard names must still be enclosed in backticks:" -- single and double quotes work well

In section 9.3.2 Dollar, $ (*), for the following code:

x <- list(spam="a", eggs="b", `eggs and spam`="c", best.spam.ever="d")

deeper says that:

Nonstandard names must be enclosed in backticks

However, single and double quotes work in place of backticks as well. At least for subsetting from objects.

The following operations are equivalent:

x$`eggs and spam`
x$"eggs and spam"
x$'eggs and spam'

So are these:

x <- list(spam="a", eggs="b", `eggs and spam`="c", best.spam.ever="d")
x <- list(spam="a", eggs="b", 'eggs and spam'="c", best.spam.ever="d")
x <- list(spam="a", eggs="b", "eggs and spam"="c", best.spam.ever="d")

(great book btw., looking towards the minimalistic pipelines!)

Typo in introduction 1.1

Trivial typo but might confuse someone:

1.1 Introduction "Documenting code is a good development practice. It is thus worth knowing that any text followed by a hash sign (that is not part of a string) is a comment. It is ignored by the interpreter."

Should probably be, "Documenting code is a good development practice. It is thus worth knowing that any text following a hash sign (that is not part of a string) is a comment. It is ignored by the interpreter."

Site wont open

The site will not open for me. I get this error:

Secure Connection Failed

An error occurred during a connection to deepr.gagolewski.com. PR_CONNECT_RESET_ERROR

Error code: PR_CONNECT_RESET_ERROR

    The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.
    Please contact the website owners to inform them of this problem.

cat("....") : should end with "\n"

It is a property of the RStudio console only that it adds a final newline (\n) ...
This is not R, but the RStudio console.
In R, cat() indeed is the low level "console print" routine and it does need a final newline in order to correctly work everywhere.

Typo «ligua franca» (Preface, 0.3, p. XV)

Hi, Marek!

«Our aim is to learn the fundamentals of base R, which constitutes the ligua franca for all R users.» (Preface, 0.3, p. XV).

Should be «lingua franca», I guess.

Thanks for the book!

With best regards,
Dmitry Kapinos

[references suggestion] the “R Inferno” book

hello,

thank you for your works

i just want to suggest the book “R Inferno”, especially its chapter 8 which contains a lot of tricks and quirks of R.

best wishes for a happy new year 😊

Example 13.24 -- Nhanes data -- download directly from github? + reproducibility of the graph style

Should the example data be read directly from github?

read.csv does support reading from URL connections:

read.csv("https://raw.githubusercontent.com/gagolews/teaching-data/master/marek/nhanes_adult_female_bmx_2020.csv")

This would mean that user can copy the code and expect it to work (instead of having a relative path on your computer). But I can imagine a few cases where this might not be desired (traffic, automated builds).

On a related question, should graph style be directly reproducible?

Missing period and alternative to `registerS3method`

Hi, thanks for your fine book, which I'm currently skimming. While reading sometimes I notice things which I could write down here, but please tell me if you feel there's no need for it.

Two points:

  1. The fourth paragraph in chapter 9.1.1. maybe has a period missing:

    This is why it is better to keep the vocabulary quite restricted Even if there are exceptions to the general rules, with fewer functions, they are easier to remember. We advocate for such minimalism in this book.

  2. The note in chapter 10.2.6 says that one might need to use registerS3method(). The documentation at help("registerS3method", "base") says, however, that it is “not intended to be called directly”. As an alternative, the method .S3method() can be used (see also Kurt Hornik: S3 Method Lookup). Exercise 16.15 might also need updating.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.