Recently, developers at R language have announced the release of R version 4.0.0 that includes a number of intuitive features and updates. R is a popular and open-source language for statistical learning that has come in a long way over a few years to assist data scientists in their workflows.
The language is used for scientific research, statistical computations, data analysis, etc. and provides a number of graphical and statistical techniques such as classical statistical tests, time-series analysis, classification, clustering, among others.
One of the reasons why the easy-to-use programming language is popular is because it can also be leveraged to produce well-designed publication-quality plots. Besides, some of the many intuitive features of this language include effective data handling, integrated collection of intermediate tools for analysis of data, graphical measure for data analysis, and much more.
From the very beginning, the core development team of this statistical language has maintained well-noted documentation that makes it easy for the beginners as well as developers to learn and keep track of what’s happening on the ground.
R 4.0.0 has been released.— Wolfgang Huber 😷 (@wolfgangkhuber) April 24, 2020
What a milestone.
Thank you to all the contributors in R-core and beyond.https://t.co/H7n9WVwL7z
Several significant user-visible changes of (previously confusing) behaviour, and many new features. pic.twitter.com/7W5We8Xsng
Today, in this article, we will look into 8 interesting features that have been updated into the new version by the R core team. They are mentioned below:-
- stringsAsFactors: stringsAsFactors = FALSE default is one of the most important features updated in this version. According to a blog post, since its inception, R has, at least by default, converted (character) strings to factors when creating data frames directly with data.frame() or as the result of using read.table() variants to read in tabular data. But, from now on R 4.0 no longer converts strings to factors in calls to data.frame() and read.table(), by default.
- Re-install Packages: Under this new version, a user must re-install the packages in order to update into the new version. A number of packages rely on the previous behaviour, so they will have to update and re-install it accordingly.
- New Syntax For Specifying Raw Character Constants: This new version of R language includes a new syntax for specifying _raw_ character constants that is similar to the syntax used in C++, which depicts as r”(…).” This feature helps to write strings easily that contain backslashes or both single and double quotes. Both the single as well as double quotes can be used interchangeably, but double quotes are preferred, so single quotes are normally only used to delimit character constants containing double quotes.
- Plot() S3 Generic: The plot() S3 generic function is now in package base rather than package graphics. The generic is currently re-exported from the graphics namespace in order to allow the packages importing it from there to continue working, but according to the developers, this function may change in future.
- Re-install S4 Generics: According to the R core team, packages which define S4 generics for plot() should be re-installed, and package code using such generics from other packages need to ensure that they are imported rather than relying on the search path.
- Reference Counting: Reference counting is now used instead of the NAMED mechanism for determining when objects can be safely mutated in base C code. This, in result, reduces the need for copying in some cases and should allow further optimisations in the future.
- Migration To PCRE2: According to the team, this version of R is built against the PCRE2 library for Perl-like regular expressions, if available. PCRE1 is no longer developed, thus migrating to PCRE2 when building R from source is strongly recommended.
- A New palette() for R: In this version, the palette() function has a new default set of colours that are said to be less saturated and have better accessibility properties. The new palette.colors() function allows a subset of colours to be selected from any of the built-in palettes.
To know more about the updates of this version, Click here.
Subscribe to our NewsletterGet the latest updates and relevant offers by sharing your email.
A Technical Journalist who loves writing about Machine Learning and Artificial Intelligence. A lover of music, writing and learning something out of the box.