The authors use the data sets provided in package spatstat.data
(v3.1.9) to demonstrate the use of functions.
Chapter 8 lists several, though not all, data objects from package spatstat.data
, along with selected inspections of these objects. The function calls shown in Chapter 8 are exclusively those provided by the spatstat.*
family of packages.
The ppp.object
(Chapter 23 ) anemones
from package spatstat.data
(v3.1.9) has
231 points;
rectangle window;
one integer
-mark
;
'vector'
-markformat
.
Data : anemones
spatstat.data:: anemones |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 231 points
# marks are numeric, of storage type 'integer'
# window: rectangle = [0, 280] x [0, 180] units
spatstat.data:: anemones |>
spatstat.geom:: markformat.ppp ()
# [1] "vector"
spatstat.data:: anemones |>
spatstat.geom:: marks.ppp () |>
summary.default ()
# Min. 1st Qu. Median Mean 3rd Qu. Max.
# 2.000 3.000 4.000 4.294 5.000 8.000
spatstat.data:: anemones |>
spatstat.geom:: marks.ppp () |>
typeof ()
# [1] "integer"
The ppp.object
(Chapter 23 ) ants
from package spatstat.data
(v3.1.9) has
97 points;
polygonal window;
one multitype
-mark
with two levels, 'Cataglyphis'
and 'Messor'
;
'vector'
-markformat
.
Data : ants
spatstat.data:: ants |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 97 points
# Multitype, with levels = Cataglyphis, Messor
# window: polygonal boundary
# enclosing rectangle: [-25, 803] x [-49, 717] units (one unit = 0.5 feet)
spatstat.data:: ants |>
spatstat.geom:: markformat.ppp ()
# [1] "vector"
spatstat.data:: ants |>
spatstat.geom:: marks.ppp () |>
table ()
#
# Cataglyphis Messor
# 29 68
The tess
ellation (Chapter 26 ) object austates
from package spatstat.data
(v3.1.9) has
7 tiles;
polygonal window;
no marks
.
Data : austates
spatstat.data:: austates |>
spatstat.geom:: print.tess ()
# Tessellation
# Tiles are irregular polygons
# 7 tiles (irregular windows)
# window: polygonal boundary
# enclosing rectangle: [113.19392, 153.6692] x [-43.59316, -10.93156] degrees
spatstat.data:: austates |>
spatstat.geom:: marks.tess () |>
is.null ()
# [1] TRUE
The ppp.object
(Chapter 23 ) betacells
from package spatstat.data
(v3.1.9) has
135 points;
rectangle window;
one numeric
-mark
area
;
one multitype
-mark
type
with two levels, 'off'
and 'on'
;
'dataframe'
-markformat
.
Data : betacells
spatstat.data:: betacells |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 135 points
# Mark variables: type, area
# window: rectangle = [28.08, 778.08] x [16.2, 1007.02] microns
spatstat.data:: betacells |>
spatstat.geom:: markformat.ppp ()
# [1] "dataframe"
spatstat.data:: betacells |>
spatstat.geom:: marks.ppp () |>
head (n = 3 L)
# type area
# 1 on 275.9
# 2 off 241.2
# 3 on 256.0
The ppp.object
(Chapter 23 ) bronzefilter
from package spatstat.data
(v3.1.9) has
678 points;
rectangle window;
one numeric
-mark
'vector'
-markformat
.
Data : bronzefilter
spatstat.data:: bronzefilter |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 678 points
# marks are numeric, of storage type 'double'
# window: rectangle = [0, 18] x [0, 7] mm
spatstat.data:: bronzefilter |>
spatstat.geom:: markformat.ppp ()
# [1] "vector"
spatstat.data:: bronzefilter |>
spatstat.geom:: marks.ppp () |>
summary.default ()
# Min. 1st Qu. Median Mean 3rd Qu. Max.
# 0.013 0.120 0.160 0.167 0.200 0.467
The hyperframe
(Chapter 17 ) cetaceans
from package spatstat.data
(v3.1.9) has
four point-pattern (ppp
(Chapter 23 )) hypercolumn
s whales
, dolphins
, fish
and plankton
.
Data : cetaceans
spatstat.data:: cetaceans |>
spatstat.geom:: print.hyperframe ()
# Hyperframe:
# whales dolphins fish plankton
# 1 (ppp) (ppp) (ppp) (ppp)
# 2 (ppp) (ppp) (ppp) (ppp)
# 3 (ppp) (ppp) (ppp) (ppp)
# 4 (ppp) (ppp) (ppp) (ppp)
# 5 (ppp) (ppp) (ppp) (ppp)
# 6 (ppp) (ppp) (ppp) (ppp)
# 7 (ppp) (ppp) (ppp) (ppp)
# 8 (ppp) (ppp) (ppp) (ppp)
# 9 (ppp) (ppp) (ppp) (ppp)
The hyperframe
(Chapter 17 ) demohyper
from package spatstat.data
(v3.1.9) has
a regular column Group
,
a point-pattern (ppp
, Chapter 23 ) hypercolumn Points
, and
a pixel image (im
, Chapter 19 ) hypercolumn Image
.
To view demohyper
in a desired format, readers may use either one of the following approaches,
call library(spatstat.geom)
, then call the S3
generic function base::print()
by simply typing the object’s name at the console prompt and pressing Enter ;
call library(groupedHyperframe)
, then call the S3
generic function base::print()
by simply typing the object’s name at the console prompt and pressing Enter . This approach works as intended, since package groupedHyperframe
(v0.3.0.20251020) Imports
the package spatstat.geom
(v3.6.0.3);
call the S3
method dispatch spatstat.geom::print.hyperframe()
directly, as in Listing 8.1 .
To find the (hyper)column names of demohyper
, readers may use either one of the following approaches,
call library(spatstat.geom)
, then call the .Primitive
S3
generic function base::names()
;
call library(groupedHyperframe)
, then call the .Primitive
S3
generic function base::names()
. This approach works as intended, since package groupedHyperframe
(v0.3.0.20251020) Imports
the package spatstat.geom
(v3.6.0.3);
call the S3
method dispatch spatstat.geom::names.hyperframe()
directly, as in Listing 8.2 .
To observe the ppp
-hypercolumn demohyper$Points
and the im
-hypercolumn demohyper$Image
, readers may use either one of the following approaches,
call library(spatstat.geom)
, then call the .Primitive
S3
generic function base::`$`
;
call library(groupedHyperframe)
, then call the .Primitive
S3
generic function base::`$`
. This approach works as intended, since package groupedHyperframe
(v0.3.0.20251020) Imports
the package spatstat.geom
(v3.6.0.3), as in Listing 8.3 ;
call the S3
method dispatch spatstat.geom::`$.hyperframe`
directly, as in Listing 8.4 .
Review : observe the 1st ppp.object
in ppp
-hypercolumn demohyper$Points
spatstat.data:: demohyper$ Points[[1 L]] |>
spatstat.geom:: print.ppp ()
# Planar point pattern: 104 points
# window: binary image mask
# 128 x 128 pixel array (ny, nx)
# enclosing rectangle: [2.017, 3.93] x [0.645, 3.278] units
if (FALSE ) {
spatstat.data:: demohyper$ Points[[1 L]] |>
spatstat.geom:: plot.ppp ()
} # figure suppressed to reduce vignette size
Review : observe im
-hypercolumn demohyper$Image
spatstat.data:: demohyper$ Image
# List of pixel images
#
# 1:
# real-valued pixel image
# 53 x 39 pixel array (ny, nx)
# enclosing rectangle: [2.017, 3.93] x [0.645, 3.278] units
#
# 2:
# real-valued pixel image
# 39 x 53 pixel array (ny, nx)
# enclosing rectangle: [0.645, 3.278] x [2.017, 3.93] units
#
# 3:
# real-valued pixel image
# 39 x 53 pixel array (ny, nx)
# enclosing rectangle: [-3.278, -0.645] x [-3.93, -2.017] units
spatstat.data:: demohyper$ Image |>
class ()
# [1] "imlist" "solist" "anylist" "listof" "list"
Review : observe the 1st im.object
in im
-hypercolumn demohyper$Image
spatstat.data:: demohyper$ Image[[1 L]] |>
spatstat.geom:: print.im ()
# real-valued pixel image
# 53 x 39 pixel array (ny, nx)
# enclosing rectangle: [2.017, 3.93] x [0.645, 3.278] units
if (FALSE ) {
spatstat.data:: demohyper$ Image[[1 L]] |>
spatstat.geom:: plot.im ()
} # figure suppressed to reduce vignette size
The ppp.object
(Chapter 23 ) finpines
from package spatstat.data
(v3.1.9) has
126 points;
rectangle window;
two numeric
-marks
, diameter
and height
;
'dataframe'
-markformat
.
Data : finpines
spatstat.data:: finpines |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 126 points
# Mark variables: diameter, height
# window: rectangle = [-5, 5] x [-8, 2] metres
spatstat.data:: finpines |>
spatstat.geom:: markformat.ppp ()
# [1] "dataframe"
spatstat.data:: finpines |>
spatstat.geom:: marks.ppp () |>
head (n = 3 L)
# diameter height
# 1 1 1.7
# 2 1 1.7
# 3 1 1.6
Data set flu
from package spatstat.data
(v3.1.9) is a hyperframe
(Chapter 17 ).
Data : flu
spatstat.data:: flu |>
spatstat.geom:: print.hyperframe ()
# Hyperframe:
# pattern virustype stain frameid
# wt M2-M1 13 (ppp) wt M2-M1 13
# wt M2-M1 22 (ppp) wt M2-M1 22
# wt M2-M1 27 (ppp) wt M2-M1 27
# wt M2-M1 43 (ppp) wt M2-M1 43
# wt M2-M1 49 (ppp) wt M2-M1 49
# wt M2-M1 65 (ppp) wt M2-M1 65
# wt M2-M1 71 (ppp) wt M2-M1 71
# wt M2-M1 84 (ppp) wt M2-M1 84
# wt M2-HA 3 (ppp) wt M2-HA 3
# wt M2-HA 4 (ppp) wt M2-HA 4
# wt M2-HA 5 (ppp) wt M2-HA 5
# wt M2-HA 17 (ppp) wt M2-HA 17
# wt M2-HA 54 (ppp) wt M2-HA 54
# wt M2-HA 74 (ppp) wt M2-HA 74
# wt M2-HA 78 (ppp) wt M2-HA 78
# wt M2-HA 82 (ppp) wt M2-HA 82
# wt M2-HA 85 (ppp) wt M2-HA 85
# wt M2-HA 100 (ppp) wt M2-HA 100
# wt M2-HA 110 (ppp) wt M2-HA 110
# mut1 M2-M1 11 (ppp) mut1 M2-M1 11
# mut1 M2-M1 13 (ppp) mut1 M2-M1 13
# mut1 M2-M1 15 (ppp) mut1 M2-M1 15
# mut1 M2-M1 17 (ppp) mut1 M2-M1 17
# mut1 M2-M1 28 (ppp) mut1 M2-M1 28
# mut1 M2-M1 29 (ppp) mut1 M2-M1 29
# mut1 M2-M1 33 (ppp) mut1 M2-M1 33
# mut1 M2-M1 38 (ppp) mut1 M2-M1 38
# mut1 M2-M1 41 (ppp) mut1 M2-M1 41
# mut1 M2-M1 44 (ppp) mut1 M2-M1 44
# mut1 M2-M1 59 (ppp) mut1 M2-M1 59
# mut1 M2-HA 8 (ppp) mut1 M2-HA 8
# mut1 M2-HA 14 (ppp) mut1 M2-HA 14
# mut1 M2-HA 23 (ppp) mut1 M2-HA 23
# mut1 M2-HA 42 (ppp) mut1 M2-HA 42
# mut1 M2-HA 51 (ppp) mut1 M2-HA 51
# mut1 M2-HA 59 (ppp) mut1 M2-HA 59
# mut1 M2-HA 73 (ppp) mut1 M2-HA 73
# mut1 M2-HA 79 (ppp) mut1 M2-HA 79
# mut1 M2-HA 86 (ppp) mut1 M2-HA 86
# mut1 M2-HA 104 (ppp) mut1 M2-HA 104
# mut1 M2-HA 147 (ppp) mut1 M2-HA 147
The ppp
-hypercolumn of the hyper data frame flu
, flu$pattern
, is a ppplist
(Chapter 24 ).
Data : a ppplist
object, as ppp
-hypercolumn, flu$pattern
spatstat.data:: flu$ pattern |>
head (n = 3 L)
# List of point patterns
#
# wt M2-M1 13:
# Marked planar point pattern: 471 points
# Multitype, with levels = M2, M1
# window: rectangle = [0, 3331] x [0, 3331] nm
#
# wt M2-M1 22:
# Marked planar point pattern: 217 points
# Multitype, with levels = M2, M1
# window: rectangle = [0, 3331] x [0, 3331] nm
#
# wt M2-M1 27:
# Marked planar point pattern: 214 points
# Multitype, with levels = M2, M1
# window: rectangle = [0, 3331] x [0, 3331] nm
spatstat.data:: flu$ pattern |>
class ()
# [1] "ppplist" "solist" "anylist" "listof" "list"
spatstat.data:: flu$ pattern |>
sapply (FUN = class) |>
head (n = 3 L)
# wt M2-M1 13 wt M2-M1 22 wt M2-M1 27
# "ppp" "ppp" "ppp"
Many examples in the Appendix use a subset
of flu
.
Data : fluM
, a subset
of flu
fluM = spatstat.data:: flu |>
spatstat.geom:: subset.hyperframe (subset = (stain == 'M2-M1' ) & (virustype == 'wt' ))
fluM
# Hyperframe:
# pattern virustype stain frameid
# wt M2-M1 13 (ppp) wt M2-M1 13
# wt M2-M1 22 (ppp) wt M2-M1 22
# wt M2-M1 27 (ppp) wt M2-M1 27
# wt M2-M1 43 (ppp) wt M2-M1 43
# wt M2-M1 49 (ppp) wt M2-M1 49
# wt M2-M1 65 (ppp) wt M2-M1 65
# wt M2-M1 71 (ppp) wt M2-M1 71
# wt M2-M1 84 (ppp) wt M2-M1 84
The ppp.object
(Chapter 23 ) gorillas
from package spatstat.data
(v3.1.9) has
647 points;
polygonal window;
two multitype
-marks
, group
(with two levels 'major'
and 'minor'
) and season
(with two levels 'dry'
and 'rainy'
);
'dataframe'
-markformat
.
Data : gorillas
spatstat.data:: gorillas |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 647 points
# Mark variables: group, season, date
# window: polygonal boundary
# enclosing rectangle: [580457.9, 585934] x [674172.8, 678739.2] metres
spatstat.data:: gorillas |>
spatstat.geom:: markformat.ppp ()
# [1] "dataframe"
spatstat.data:: gorillas |>
spatstat.geom:: marks.ppp () |>
head (n = 3 L)
# group season date
# 1 major dry 2006-01-06
# 2 major dry 2006-01-10
# 3 major dry 2006-01-15
Data set Kovesi
from package spatstat.data
(v3.1.9) is a hyperframe
(Chapter 17 ).
Data : Kovesi
spatstat.data:: Kovesi |>
spatstat.geom:: dim.hyperframe ()
# [1] 41 13
spatstat.data:: Kovesi |>
spatstat.geom:: head.hyperframe (n = 3 L) |>
spatstat.geom:: print.hyperframe ()
# Hyperframe:
# linear diverging rainbow cyclic isoluminant ternary colsig l1 l2 chro n cycsh values
# 1 FALSE FALSE FALSE TRUE FALSE FALSE j 15 85 0 256 0 (character)
# 2 FALSE FALSE FALSE TRUE FALSE FALSE j 15 85 0 256 25 (character)
# 3 FALSE FALSE FALSE TRUE FALSE FALSE mrybm 35 75 68 256 0 (character)
The ppp.object
(Chapter 23 ) longleaf
from package spatstat.data
(v3.1.9) has
584 points;
rectangle window;
one numeric
-mark
'vector'
-markformat
.
Data : longleaf
spatstat.data:: longleaf |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 584 points
# marks are numeric, of storage type 'double'
# window: rectangle = [0, 200] x [0, 200] metres
spatstat.data:: longleaf |>
spatstat.geom:: markformat.ppp ()
# [1] "vector"
spatstat.data:: longleaf |>
spatstat.geom:: marks.ppp () |>
summary.default ()
# Min. 1st Qu. Median Mean 3rd Qu. Max.
# 2.00 9.10 26.15 26.84 42.12 75.90
The ppp.object
(Chapter 23 ) nbfires
from package spatstat.data
(v3.1.9) has
7108 points;
polygonal window;
two multitype
-marks
fire.type
and cause
;
one numeric
-mark
fnl.size
;
'dataframe'
-markformat
.
Data : nbfires
spatstat.data:: nbfires |>
spatstat.geom:: print.ppp ()
# Warning: some mark values are NA in the point pattern x
# Marked planar point pattern: 7108 points
# Mark variables: year, fire.type, dis.date, dis.julian, out.date, out.julian, cause, ign.src, fnl.size
# window: polygonal boundary
# enclosing rectangle: [0, 1000] x [0, 958.9142] units (one unit = 0.403716 km)
spatstat.data:: nbfires |>
spatstat.geom:: markformat.ppp ()
# [1] "dataframe"
spatstat.data:: nbfires |>
spatstat.geom:: marks.ppp () |>
head (n = 3 L)
# year fire.type dis.date dis.julian out.date out.julian cause ign.src fnl.size
# 1 2000 forest 2000-05-04 19:15:00 124.7604 2000-05-05 12:00:00 125.4583 resid burn.w.perm 1.6
# 2 2000 forest 2000-04-18 14:00:00 108.5417 2000-04-18 19:00:00 108.7500 misc cigs 7.0
# 3 2000 grass 2000-05-03 16:30:00 123.6458 2000-05-03 18:00:00 123.7083 resid burn.no.perm 1.0
The hyperframe
(Chapter 17 ) osteo
from package spatstat.data
(v3.1.9) has
the serial number of sampling volume brick
nested in the bone sample id
Data : osteo
spatstat.data:: osteo |>
spatstat.geom:: dim.hyperframe ()
# [1] 40 5
spatstat.data:: osteo |>
spatstat.geom:: head.hyperframe (n = 6 L) |>
spatstat.geom:: print.hyperframe ()
# Hyperframe:
# id shortid brick pts depth
# 1 c77za4 4 1 (pp3) 45
# 2 c77za4 4 2 (pp3) 60
# 3 c77za4 4 3 (pp3) 55
# 4 c77za4 4 4 (pp3) 60
# 5 c77za4 4 5 (pp3) 85
# 6 c77za4 4 6 (pp3) 90
The ppp.object
(Chapter 23 ) spruces
from package spatstat.data
(v3.1.9) has
134 points;
rectangle window;
one numeric
-mark
'vector'
-markformat
.
Data : spruces
spatstat.data:: spruces |>
spatstat.geom:: print.ppp ()
# Marked planar point pattern: 134 points
# marks are numeric, of storage type 'double'
# window: rectangle = [0, 56] x [0, 38] metres
spatstat.data:: spruces |>
spatstat.geom:: markformat.ppp ()
# [1] "vector"
spatstat.data:: spruces |>
spatstat.geom:: marks.ppp () |>
summary.default ()
# Min. 1st Qu. Median Mean 3rd Qu. Max.
# 0.1600 0.2200 0.2450 0.2504 0.2700 0.3700
The ppp.object
(Chapter 23 ) swedishpines
from package spatstat.data
(v3.1.9) has
the \(x\) - and \(y\) -coordinates of 71 points-only;
rectangle window;
no marks
, i.e., 'none'
-markformat
.
Data : swedishpines
spatstat.data:: swedishpines |>
spatstat.geom:: print.ppp ()
# Planar point pattern: 71 points
# window: rectangle = [0, 96] x [0, 100] units (one unit = 0.1 metres)
spatstat.data:: swedishpines |>
spatstat.geom:: markformat.ppp ()
# [1] "none"
spatstat.data:: swedishpines |>
spatstat.geom:: marks.ppp () |>
is.null ()
# [1] TRUE
The ppp.object
(Chapter 23 ) vesicles
from package spatstat.data
(v3.1.9) has
the \(x\) - and \(y\) -coordinates of 37 points-only;
polygonal window;
no marks
, i.e., 'none'
-markformat
.
Data : vesicles
spatstat.data:: vesicles |>
spatstat.geom:: print.ppp ()
# Planar point pattern: 37 points
# window: polygonal boundary
# enclosing rectangle: [22.6796, 586.2292] x [11.9756, 1030.7] nm
spatstat.data:: vesicles |>
spatstat.geom:: markformat.ppp ()
# [1] "none"
spatstat.data:: vesicles |>
spatstat.geom:: marks.ppp () |>
is.null ()
# [1] TRUE
Data set waterstriders
from package spatstat.data
(v3.1.9) is a length
-3 ppplist
(Chapter 24 ).
Data : waterstriders
spatstat.data:: waterstriders
# List of point patterns
#
# Component 1:
# Planar point pattern: 38 points
# window: rectangle = [0, 48.1] x [0, 48.1] cm
#
# Component 2:
# Planar point pattern: 36 points
# window: rectangle = [0, 48.8] x [0, 48.8] cm
#
# Component 3:
# Planar point pattern: 36 points
# window: rectangle = [0, 46.4] x [0, 46.4] cm
spatstat.data:: waterstriders |>
class ()
# [1] "ppplist" "solist" "anylist" "listof" "list"
spatstat.data:: waterstriders |>
sapply (FUN = class)
# [1] "ppp" "ppp" "ppp"