Adding a legend to a plot

July 20, 2009
By
Adding a legend to a plot

It's pretty easy!plot (c(1968,2010),c(0,10),type="n", # sets the x and y axes scales xlab="Year",ylab="Expenditures/GDP (%)") # adds titles to the axes lines(year,defense,col="red",lwd=2.5) # adds a line for defense expenditures lines(year,health,col="...

Read more »

Example 7.6: Find Amazon sales rank for a book

July 20, 2009
By
Example 7.6: Find Amazon sales rank for a book

In honor of Amazon's official release date for the book, we offer this blog entry.Both SAS and R can be used to find the Amazon Sales Rank for a book by downloading the desired web page and ferreting out the appropriate line. This code is likely to br...

Read more »

ggplot2: more wicked-cool plots in R

July 20, 2009
By

As far as I know there are 3 different systems for producing figures in R: (1) base graphics, included with R, (2) the lattice package, and (3) ggplot2, one of the newer plotting systems which is, according to the creator Hadley Wickham, "based on the grammar of graphics, which tries to take the good parts of base and lattice...

Read more »

Probability exercise: negative binomial distribution

July 19, 2009
By
Probability exercise: negative binomial distribution

What is the probability you get the 4th cross before the 3rd head, flipping a coin?The mathematical formula for solving this exercise, which follows a negative binomial distribution, is:$$f(x)=P(X=x)=\begin{pmatrix} x+y-1\\ y-1 \end{pmatrix} \cdot p^x ...

Read more »

New RInside release

July 19, 2009
By

I just rolled up a new release of RInside, my C++ wrapper classes which facilitate embedding R into your own C++ application. This releases owes a big Thank you! to Miguel Lechón who not only noticed errant behaviour and occassional segfaults with overly long commands sent to the embedded R, but even traced it to an oversight of mine in a simple memory buffer class...

Read more »

New RInside release

July 19, 2009
By

I just rolled up a new release of RInside, my C++ wrapper classes which facilitate embedding R into your own C++ application. This releases owes a big Thank you! to Miguel Lechón who not only noticed errant behaviour and occassional segfaults with ov...

Read more »

New RInside release

July 19, 2009
By

I just rolled up a new release of RInside, my C++ wrapper classes which facilitate embedding R into your own C++ application. This releases owes a big Thank you! to Miguel Lechón who not only noticed errant behaviour and occassional segfaults with overly long commands sent to the embedded R, but even traced it to an oversight of mine in a simple memory buffer class...

Read more »

David Varadi’s RSI(2) alternative

July 19, 2009
By
David Varadi’s RSI(2) alternative

Here's a quick R implementation of David Varadi's alternative to the RSI(2).  Michael Stokes over at the MarketSci blog has three great posts exploring this indicator: Varadi’s RSI(2) Alternative: The DV(2) RSI(2) vs. DV(2) Last Couple...

Read more »

A probability exercise on the Bernoulli distribution

July 18, 2009
By
A probability exercise on the Bernoulli distribution

What is the probability, flipping a coin 8 times, to obtain the sequence HHTTTHTT? (H = head; T= tail)The theory teaches us that to solve this question, we can simply use the following formula:$$f(x)=P(X=x)=B(n,p)=\begin{pmatrix}n\\ x \end{pmatrix} \cd...

Read more »

Let us practice with some functions of R

July 18, 2009
By
Let us practice with some functions of R

Given the following data set, compute the arithmetic mean, median, variance, standard deviation; find the greatest and the smaller value, the sum of all values, the square of the sum of all values, the sum of the square of all values; assigne the ranks...

Read more »

Book excerpts now posted

July 18, 2009
By
Book excerpts now posted

We've posted excerpts from the book on the book website. The excerpts include Chapter 3 (regression and ANOVA) in its entirety. This demonstrates how the entries (the generic descriptions of software functions) and the worked examples reinforce each ...

Read more »

Parsing GEO SOFT files with Python and Sqlite

July 17, 2009
By
Parsing GEO SOFT files with Python and Sqlite

NCBI's GEO database of gene expression data is a great resource, but its records are very open ended. This lack of rigidity was perhaps necessary to accommodate the variety of measurement technologies, but makes getting data out a little tricky. But, a...

Read more »

Simple Data Visualization

July 16, 2009
By
Simple Data Visualization

OK, so, I know I already raved about one Hadley Wickham project and how it has changed my life last week. But what can I say, the man is a genius. And if you are using R (and let’s face it, you should be) and you want simple sexy graphs made quick, the man has

Read more »

Influence.ME: Simple Analysis

July 16, 2009
By
Influence.ME: Simple Analysis

With the introduction of our new package for influential data influence.ME, I’m currently writing a manual for the package. This manual will address topics for both the experienced, and the inexperienced users. I will also present much of the content ...

Read more »

Missing data, logistic regression, and a predicted values plot (or two)

July 15, 2009
By

miss attach miss result1 summary(result1) Call: glm(formula = a ~ b, family = binomial(logit)) Deviance Residuals: Min 1Q Median 3Q Max -1.8864 -1.2036 0.7397 0.9425 1.4385 Coefficients: ...

Read more »

Missing data, logistic regression, and a predicted values plot (or two)

July 15, 2009
By

miss attach miss result1 summary(result1) Call: glm(formula = a ~ b, family = binomial(logit)) Deviance Residuals: Min 1Q Median 3Q Max -1.8864 -1.2036 0.7397 0.9425 1.4385 Coefficients: ...

Read more »

Job grade plot

July 15, 2009
By
Job grade plot

This plot:was created using the following R code:plot (q9e~q8, type = "n",xlim = c(1,13), ylim = c(1,13),cex.lab=1.25,cex.axis=0.75, col.lab = "#333333", xlab = "Obama job grade",ylab = "Congressional job grade", xaxt ="n", yaxt="n",main="Obama and Co...

Read more »

Job grade plot

July 15, 2009
By
Job grade plot

This plot:was created using the following R code:plot (q9e~q8, type = "n",xlim = c(1,13), ylim = c(1,13),cex.lab=1.25,cex.axis=0.75, col.lab = "#333333", xlab = "Obama job grade",ylab = "Congressional job grade", xaxt ="n", yaxt="n",main="Obama and Co...

Read more »

Example 7.5: Replicating a prettier jittered scatterplot

July 15, 2009
By
Example 7.5: Replicating a prettier jittered scatterplot

The scatterplot in section 7.4 is a plot we could use repeatedly. We demonstrate how to create a macro (SAS, section A.8) and a function (R, section B.5) to do it more easily.SAS%macro logiplot(x=x, y=y, data=, jitterwidth=.05, smooth=50);data lp1;set...

Read more »

Building R packages for Windows

July 13, 2009
By
Building R packages for Windows

1. Installing the required tools To build an R package in Windows, you will need to install some additional software tools. These are summarized at http://www.murdoch-sutherland.com/Rtools 1.1 Essential: Rtools This is a collection of unix-like tools that can be run from the DOS command prompt. It also contains the MinGW compilers that are used for

Read more »

Building R packages for Windows

July 13, 2009
By

1. Installing the required tools To build an R package in Windows, you will need to install some additional software tools. These are summarized at http://www.murdoch-sutherland.com/Rtools 1.1 Essential: Rtools This is a collection of unix-like tools...

Read more »

A recommended book

July 13, 2009
By
A recommended book

I've been getting a lot of help from this book:While written for S-Plus, nearly everything in it is applicable with R.

Read more »

A recommended book

July 13, 2009
By
A recommended book

I've been getting a lot of help from this book:While written for S-Plus, nearly everything in it is applicable with R.

Read more »

cran2deb: Would you like 1700+ new Debian / R packages ?

July 13, 2009
By

As I mentioned in my quick write-up of UseR 2009, one of my talks was about cran2deb: a system to turn (essentially) all CRAN packages into directly apt-get-able binary packages. This is essentially a '2.0' version of earlier work with Steffen Moel...

Read more »

cran2deb: Would you like 1700+ new Debian / R packages ?

July 13, 2009
By

As I mentioned in my quick write-up of UseR 2009, one of my talks was about cran2deb: a system to turn (essentially) all CRAN packages into directly apt-get-able binary packages. This is essentially a '2.0' version of earlier work with Steffen Moelle...

Read more »

cran2deb: Would you like 1700+ new Debian / R packages ?

July 13, 2009
By

As I mentioned in my quick write-up of UseR 2009, one of my talks was about cran2deb: a system to turn (essentially) all CRAN packages into directly apt-get-able binary packages. This is essentially a '2.0' version of earlier work with Steffen Moel...

Read more »

Some detail on the last plot

July 13, 2009
By
Some detail on the last plot

First we plot approval (app) against date (daten). We also specify a few other things. ylim=c(40,80) specifies that the y axis extends from 40 to 80. xlim=c(-3,210) might seem odd, but we need extra space on the left. pch=16 plots dots, and col="gray" ...

Read more »

Some detail on the last plot

July 13, 2009
By
Some detail on the last plot

First we plot approval (app) against date (daten). We also specify a few other things. ylim=c(40,80) specifies that the y axis extends from 40 to 80. xlim=c(-3,210) might seem odd, but we need extra space on the left. pch=16 plots dots, and col="gray" ...

Read more »

Obama approval

July 12, 2009
By
Obama approval

Working some more with time series data. Here we have a graph of Obama job approval numbers, with two LOWESS-fit lines added for trending:Figure1. President Obama job approval, Jan 2009 - present.There's actually some pretty fancy stuff going on there, as the following code shows.polls lfit1 lfit2 plot (app~daten, ylim=c(40,80), xlim=c(-3,210),pch=16, col="gray",cex.lab=1.25,cex.axis=0.75,col.lab = "#777777", xlab="",ylab="Obama...

Read more »