**Introduction**

S is a language that was developed by John Chambers and others at the old Bell Telephone Laboratories, originally part of AT&T Corp was initiated in1976⁷as an internals statistical analysis environment—originally implemented as Fortran libraries. Early versions of the language did not even contain functions for statistical modeling.

In 1988 the system was rewritten in C and began to resemble the system that we have today (this wasVersion3ofthelanguage).The book Statistical Model sins by Chambers and Hastie(the white book) documents the statistical analysis functionality. Version 4 of the S language was released in 1998 and is the version we use today. The book Programming with Data by John Chambers (the green book) documents this version of the language.

Since the early 90’s the life of these language has gone down ara ther winding path.In1993 Bell Labs gave Statics (later Insightful Corp.) an exclusive license to develop and sell the S language. In 2004 Insightful purchased the S language from Lucent for $2 million. In 2006, Alcatel purchased Lucent Technologies and is now called Alcatel-Lucent.

Insightful sold its implementation of the S language under the product name S-PLUS and built a number of fancy features (GUIs, mostly) on top of it—hence the “PLUS”. In 2008 Insightful was acquired by TIBCO for $25 million. As of this writing TIBCO is the current towner of these language and is its exclusive developer.

The fundamentals of the S language itself has not changed dramatically since the publication of the Green Book by John Chambers in 1998. In 1998, S won the Association for Computing Machinery’s Software System Award, a highly prestigious award in the computer science field.

**Table of content**

**Preface . **

**History and Overview of R .**

What is R?

The S Philosophy

Back to R

Basic Features of R

Free Software

Design of the R System .

Limitations of R

R Resources

**Getting Started with R **

Installation

Getting started with the R interface .

**R Nuts and Bolts **

Entering Input

Evaluation

R Objects .

Numbers

Attributes

Creating Vectors .

Mixing Objects

Explicit Coercion

Matrices .

Lists .

Factors .

Data Frames .

**Getting Data In and Out of R **

Reading and Writing Data .

Reading Data Files with read.table()

Reading in Larger Datasets with read.table .

Calculating Memory Requirements for R Objects .

**Using the readr Package . **

**Using Textual and Binary Formats for Storing Data . **

**Using dput() and dump() **

Binary Formats . .

**Interfaces to the Outside World **

File Connections .

Reading Lines of a Text File .

Reading From a URL Connection

**Subsetting R Objects **

Subsetting a Vector . .

Subsetting a Matrix .

Subsetting Lists

Subsetting Nested Elements of a List

Extracting Multiple Elements of a List

Partial Matching

Removing NA Values .

**Vectorized Operations . **

Vectorized Matrix Operations . .

Dates and Times .

**Dates in R . **

Times in R

Operations on Dates and Times

Managing Data Frames with the dplyr package

Data Frames .

**The dplyr Package **

dplyr Grammar

Installing the dplyr package

select()

filter()

arrange() .

rename()

mutate()

group_by()

**Control Structures **

if-else

for Loops

Nested for loops

while Loops

repeat Loops

next, break

**Functions **

Functions in R

Your First Function

Argument Matching

Lazy Evaluation

The … Argument

Argument

**Scoping Rules of R **

A Diversion on Binding Values to Symbol

**Scoping Rules . **

Lexical Scoping: Why Does It Matter?

Lexical vs. Dynamic Scoping

Application: Optimization

Plotting the Likelihood

Coding Standards for R

Loop Functions

Looping on the Command Line

lapply() .

sapply()

split()

Splitting a Data Frame

tapply

apply()

Col/Row Sums and Means .

Other Ways to Apply

mapply()

Vectorizing a Function .

Summary .

**Debugging **

Something’s Wrong!

Figuring Out What’s Wrong

Debugging Tools in R

Using traceback()

Using debug()

Using recover()

**Profiling R Code **

Using system.time()

Timing Longer Expressions .

The R Profiler .

Using summaryRprof()

Simulation .

Generating Random Numbers

Setting the random number seed

Simulating a Linear Model .

Random Sampling

Summary

Data Analysis Case Study: Changes in Fine Particle Air Pollution in the U.S. .

**Synopsis .**

Loading and Processing the Raw Data

Results

Tags: #Exploratory Data Analysis with R By Roger Peng pdf #Exploratory Data Analysis with R Peng pdf Download #R For Data Science e Garrett Grolemund #R For Data Science Hadley Wickham pdf #R For Data Science pdf Download #The Art of Data Science pdf