Below is the R code used to generate results and figures in chapter 2.
The code is in a rather raw format extracted from the book manuscript files – please read the instructions for use if you haven’t done so yet.
You can download the script here .
### R code from vignette source '02software.Rnw'
## Copyright (C) Adrian Baddeley, Ege Rubak and Rolf Turner
###################################################
### code chunk number 1: 02software.Rnw:9-10
###################################################
source ( "R/startup.R" )
###################################################
### code chunk number 2: 02software.Rnw:184-185 (eval = FALSE)
###################################################
##
###################################################
### code chunk number 3: 02software.Rnw:189-193 (eval = FALSE)
###################################################
## 1+1
## 3 * (10 + 5)
## 2:5
## sqrt(2)
###################################################
### code chunk number 4: 02software.Rnw:201-205
###################################################
1+1
3 * ( 10 + 5 )
2 : 5
sqrt ( 2 )
###################################################
### code chunk number 5: 02software.Rnw:209-210
###################################################
opa <- options ( width = 78 )
###################################################
### code chunk number 6: 02software.Rnw:212-213
###################################################
( 1 : 30 ) ^ 2
###################################################
### code chunk number 7: 02software.Rnw:215-216
###################################################
options ( opa )
###################################################
### code chunk number 8: 02software.Rnw:220-222
###################################################
x <- 17
x
###################################################
### code chunk number 9: 02software.Rnw:231-232
###################################################
options ( continue = "+" )
###################################################
### code chunk number 10: 02software.Rnw:234-237
###################################################
folderol <- 1.2
sin ( folderol * folderol * folderol * folderol *
folderol * folderol * folderol * folderol * folderol )
###################################################
### code chunk number 11: 02software.Rnw:239-240
###################################################
options ( continue = " " )
###################################################
### code chunk number 12: 02software.Rnw:327-331
###################################################
x <- c ( 3.2 , 1.5 , 3.6 , 9.2 , 2.4 )
x
y <- 1 : 5
y
###################################################
### code chunk number 13: 02software.Rnw:339-341
###################################################
x + 5
x / y
###################################################
### code chunk number 14: 02software.Rnw:345-347
###################################################
month.name
x > 3
###################################################
### code chunk number 15: 02software.Rnw:351-353
###################################################
x [ 2 ]
month.name [ 8 ]
###################################################
### code chunk number 16: 02software.Rnw:394-396
###################################################
b <- list ( c ( "Tuesday" , "Friday" ), 3 : 7 , c ( FALSE , TRUE ))
b
###################################################
### code chunk number 17: 02software.Rnw:412-414
###################################################
b [ 2 ]
b [[ 2 ]]
###################################################
### code chunk number 18: 02software.Rnw:423-426
###################################################
b <- list ( Day = "Tuesday" , Number = 3 : 7 , Answers = c ( FALSE , TRUE ))
names ( b )
b
###################################################
### code chunk number 19: 02software.Rnw:429-430
###################################################
names ( b ) <- c ( "Day" , "Number" , "Answers" )
###################################################
### code chunk number 20: 02software.Rnw:434-436
###################################################
b [ c ( "Day" , "Answers" )]
b [[ "Day" ]]
###################################################
### code chunk number 21: 02software.Rnw:440-441
###################################################
b $ Day
###################################################
### code chunk number 22: 02software.Rnw:459-462
###################################################
m <- matrix ( 1 : 12 , nrow = 3 , ncol = 4 )
m
m [ 2 , 3 ]
###################################################
### code chunk number 23: 02software.Rnw:471-473
###################################################
m [ 2 ,]
m [, 3 ]
###################################################
### code chunk number 24: 02software.Rnw:477-478
###################################################
m [ 5 ]
###################################################
### code chunk number 25: 02software.Rnw:481-482
###################################################
matrix ( 1 : 12 , nrow = 3 , ncol = 4 , byrow = TRUE )
###################################################
### code chunk number 26: 02software.Rnw:487-490
###################################################
d <- data.frame ( i = 7 : 10 , month = month.name [ 7 : 10 ],
has.r = (( 1 : 4 ) > 2 ))
d
###################################################
### code chunk number 27: 02software.Rnw:498-500
###################################################
colnames ( d ) <- c ( "month" , "name" , "has.r" )
d
###################################################
### code chunk number 28: 02software.Rnw:503-505
###################################################
d [ 2 , 3 ]
d [, 3 ]
###################################################
### code chunk number 29: 02software.Rnw:511-514
###################################################
d [[ 3 ]]
d [ c ( "month" , "name" )]
d $ month
###################################################
### code chunk number 30: 02software.Rnw:553-556 (eval = FALSE)
###################################################
## plot(sunspots)
## summary(sunspots)
## X <- sunspots
###################################################
### code chunk number 31: 02software.Rnw:561-562
###################################################
class ( sunspots )
###################################################
### code chunk number 32: 02software.Rnw:597-598 (eval = FALSE)
###################################################
## methods(plot)
###################################################
### code chunk number 33: 02software.Rnw:602-603 (eval = FALSE)
###################################################
## methods(class="ts")
###################################################
### code chunk number 34: 02software.Rnw:623-625
###################################################
1+1
sin ( pi / 3 )
###################################################
### code chunk number 35: 02software.Rnw:629-632
###################################################
fun <- function (){ invisible ( 42 )}
fun ()
###################################################
### code chunk number 36: 02software.Rnw:636-638
###################################################
x <- fun ()
x
###################################################
### code chunk number 37: 02software.Rnw:641-642
###################################################
( fun ())
###################################################
### code chunk number 38: 02software.Rnw:690-695
###################################################
col <- c ( "red" , "green" , "red" , "blue" ,
"blue" , "green" , "red" )
col
f <- factor ( col )
f
###################################################
### code chunk number 39: 02software.Rnw:705-707
###################################################
is.factor ( col )
is.factor ( f )
###################################################
### code chunk number 40: 02software.Rnw:714-715
###################################################
factor ( col , levels = c ( "red" , "green" , "blue" ), labels = c ( "r" , "g" , "b" ))
###################################################
### code chunk number 41: 02software.Rnw:732-734
###################################################
x <- c ( 1 , 7 , 4 , 10 , 2 , 14 , 15 , 4 , 9 )
cut ( x , c ( 0 , 5 , 10 , 15 ))
###################################################
### code chunk number 42: 02software.Rnw:752-753
###################################################
as.integer ( f )
###################################################
### code chunk number 43: 02software.Rnw:756-757
###################################################
levels ( f )
###################################################
### code chunk number 44: 02software.Rnw:776-783
###################################################
x <- factor ( c ( "1.02" , "2.03" , "2.03" ,
"1.02" , "3.04" , "1.02" ,
"2.03" , "1.02" , "3.04" , "2.03" ))
x
as.numeric ( x )
as.numeric ( as.character ( x ))
as.numeric ( levels ( x ))[ x ]
###################################################
### code chunk number 45: 02software.Rnw:819-822
###################################################
a <- ( y ~ x + z )
a
class ( a )
###################################################
### code chunk number 46: PromptOff.Rnw:1-2
###################################################
options ( prompt = " " )
###################################################
### code chunk number 47: 02software.Rnw:835-837 (eval = FALSE)
###################################################
## plot(y ~ x)
## lm(y ~ x)
###################################################
### code chunk number 48: PromptOn.Rnw:1-2
###################################################
options ( prompt = "> " )
###################################################
### code chunk number 49: 02software.Rnw:865-866 (eval = FALSE)
###################################################
## plot(stack.loss ~ Water.Temp, data=stackloss)
###################################################
### code chunk number 50: 02software.Rnw:873-874 (eval = FALSE)
###################################################
## plot(weight ~ feed, data=chickwts)
###################################################
### code chunk number 51: fv2.Rnw:3-5
###################################################
newplot ( 12 , 0.95 )
setmargins ( 0.5 + c ( 3 , 3 , 0 , 1 ))
###################################################
### code chunk number 52: 02software.Rnw:884-886
###################################################
setmargins ( 3 , 4 , 0.2 , 1 )
setpar ( font.lab = 1 )
###################################################
### code chunk number 53: 02software.Rnw:890-894
###################################################
par ( mfrow = c ( 1 , 2 ), pty = "s" )
plot ( stack.loss ~ Water.Temp , data = stackloss )
plot ( weight ~ feed , data = chickwts )
par ( mfrow = c ( 1 , 1 ))
###################################################
### code chunk number 54: 02software.Rnw:905-906
###################################################
resetpar ()
###################################################
### code chunk number 55: 02software.Rnw:919-920 (eval = FALSE)
###################################################
## plot(stack.loss ~ Water.Temp + Air.Flow, data=stackloss)
###################################################
### code chunk number 56: 02software.Rnw:931-934 (eval = FALSE)
###################################################
## library(scatterplot3d)
## with(stackloss,
## scatterplot3d(stack.loss ~ Water.Temp + Air.Flow))
###################################################
### code chunk number 57: 02software.Rnw:941-944
###################################################
fut <- lm ( stack.loss ~ Water.Temp , data = stackloss )
co <- coef ( fut )
co <- round ( co , 3 )
###################################################
### code chunk number 58: 02software.Rnw:953-954 (eval = FALSE)
###################################################
## lm(stack.loss ~ Water.Temp, data=stackloss)
###################################################
### code chunk number 59: 02software.Rnw:963-964
###################################################
fut
###################################################
### code chunk number 60: 02software.Rnw:1001-1002 (eval = FALSE)
###################################################
## lm(stack.loss ~ Water.Temp + Air.Flow, data=stackloss)
###################################################
### code chunk number 61: 02software.Rnw:1012-1013 (eval = FALSE)
###################################################
## lm(stack.loss ~ Water.Temp - 1, data=stackloss)
###################################################
### code chunk number 62: 02software.Rnw:1023-1024
###################################################
lm ( weight ~ feed - 1 , data = chickwts )
###################################################
### code chunk number 63: 02software.Rnw:1156-1159 (eval = FALSE)
###################################################
## library(maptools)
## data(SplashDams)
## SplashDams[1:3,]
###################################################
### code chunk number 64: 02software.Rnw:1528-1530
###################################################
spatstat.options ( terse = 3 )
oldopt <- options ( digits = 3 )
###################################################
### code chunk number 65: 02software.Rnw:1539-1540
###################################################
swedishpines
###################################################
### code chunk number 66: 02software.Rnw:1546-1547
###################################################
swp <- rescale ( swedishpines )
###################################################
### code chunk number 67: 02software.Rnw:1550-1551 (eval = FALSE)
###################################################
## plot(swp)
###################################################
### code chunk number 68: 02software.Rnw:1556-1557
###################################################
DD <- density ( swp )
###################################################
### code chunk number 69: 02software.Rnw:1559-1560 (eval = FALSE)
###################################################
## plot(DD)
###################################################
### code chunk number 70: 02software.Rnw:1566-1567
###################################################
KK <- Kest ( swp )
###################################################
### code chunk number 71: 02software.Rnw:1569-1570 (eval = FALSE)
###################################################
## plot(KK)
###################################################
### code chunk number 72: 02software.Rnw:1577-1579
###################################################
newplot ( 12 , 0.58 )
setmargins ( 1.5 , 0 , 0 , 0 )
###################################################
### code chunk number 73: 02software.Rnw:1581-1585
###################################################
swp <- rescale ( swedishpines )
plot ( solist ( swp , density ( swp )), equal.scales = TRUE , valign = TRUE ,
main = "" , main.panel = "" , mar.panel = 0 , hsep = 1 ,
ribside = "bottom" )
###################################################
### code chunk number 74: fv.Rnw:3-5
###################################################
newplot ( 6 , 0.5 )
setmargins ( 0.5 + c ( 3 , 3 , 1 , 0 ))
###################################################
### code chunk number 75: 02software.Rnw:1589-1590
###################################################
setmargins ( c ( 3.5 , 3.5 , 0 , 0 ))
###################################################
### code chunk number 76: 02software.Rnw:1592-1593
###################################################
plot ( Kest ( swp ), main = "" , xlim = c ( 0 , 1.5 ), legend = FALSE )
###################################################
### code chunk number 77: 02software.Rnw:1608-1609
###################################################
fitS <- ppm ( swp ~ polynom ( x , y , 2 ), Strauss ( 0.9 ))
###################################################
### code chunk number 78: 02software.Rnw:1615-1616
###################################################
fitS
###################################################
### code chunk number 79: 02software.Rnw:1620-1622
###################################################
fitP <- ppm ( swp ~ polynom ( x , y , 2 ), Poisson ())
anova ( fitP , fitS , test = "LR" )
###################################################
### code chunk number 80: 02software.Rnw:1641-1642
###################################################
class ( swedishpines )
###################################################
### code chunk number 81: 02software.Rnw:1658-1660
###################################################
DD <- density ( swp )
class ( DD )
###################################################
### code chunk number 82: 02software.Rnw:1672-1674
###################################################
KK <- Kest ( swp )
class ( KK )
###################################################
### code chunk number 83: 02software.Rnw:1680-1682
###################################################
fitS <- ppm ( swp ~ polynom ( x , y , 2 ), Strauss ( 0.9 ))
class ( fitS )
###################################################
### code chunk number 84: 02software.Rnw:1694-1696
###################################################
spatstat.options ( terse = 0 )
options ( oldopt )
###################################################
### code chunk number 85: 02software.Rnw:1716-1717 (eval = FALSE)
###################################################
## help.search("systematic", package="spatstat")
###################################################
### code chunk number 86: 02software.Rnw:1807-1808
###################################################
zeromargins ()
###################################################
### code chunk number 87: 02software.Rnw:1812-1816
###################################################
plot ( solist ( swedishpines , amacrine , longleaf ),
main = "" , main.panel = "" , equal.scales = FALSE , legend = FALSE ,
panel.args = function ( i ) if ( i == 2 ) list ( chars = c ( 1 , 16 )) else list (),
mar.panel = 0.2 , hsep = 1 )
###################################################
### code chunk number 88: 02software.Rnw:1851-1853
###################################################
zeromargins ()
setmargins ( 0 , 0.1 , 0 , 0.2 )
###################################################
### code chunk number 89: 02software.Rnw:1857-1862
###################################################
W <- as.owin ( humberside )
plot ( solist ( as.rectangle ( W ), W , as.mask ( W , dimyx = 32 )),
equal.scales = TRUE ,
panel.args = function ( i ) if ( i == 3 ) list ( box = FALSE ) else list (),
main = "" , main.panel = "" , mar.panel = 0 , hsep = 1 )
###################################################
### code chunk number 90: 02software.Rnw:1873-1874
###################################################
Z <- rotate ( Smooth ( distmap ( copper $ Lines )), pi / 2 )
###################################################
### code chunk number 91: CopperR.Rnw:3-5
###################################################
newplot ( 12 , 0.8 )
setmargins ( 0 , 0 , 0 , 1 )
###################################################
### code chunk number 92: 02software.Rnw:1892-1893
###################################################
plot ( Z , main = "" )
###################################################
### code chunk number 93: 02software.Rnw:1916-1918
###################################################
L <- psp ( runif ( 20 ), runif ( 20 ), runif ( 20 ), runif ( 20 ), window = owin ())
D <- dirichlet ( runifpoint ( 42 ))
###################################################
### code chunk number 94: Unit2.Rnw:3-5
###################################################
newplot ( 12.5 , 0.9 )
setmargins ( 0 )
###################################################
### code chunk number 95: 02software.Rnw:1922-1923
###################################################
zeromargins ()
###################################################
### code chunk number 96: 02software.Rnw:1927-1930
###################################################
plot ( solist ( L , D ),
main = "" , main.panel = "" , equal.scales = TRUE ,
mar.panel = 0.1 , hsep = 1 )