rrot.clust: Generation of Points with Rotational Clusters

rrot.clustR Documentation

Generation of Points with Rotational Clusters

Description

An object of class "Clusters".

Generates n 2D points with k (k \ge 2) clusters with centers d unit away from origin and angles between the rays joining successive centers and origin is 2 \pi/k where about n/k points belongs to each cluster.

If distribution="uniform", the points are uniformly generated in their square supports with unit edge lengths and centers at (d \cos(j 2 \pi/k),d \cos(j 2\pi/k)) for j=1,2,\ldots,k.

If distribution="bvnormal", the points are generated from the bivariate normal distribution with means equal to the centers of the above squares (i.e., for each cluster with mean=(d \cos(j 2 \pi/k),d \cos(j 2\pi/k)) for j=1,2,\ldots,k and the covariance matrix sd I_2, where sd=d\sqrt{2 (1-cos(2 \pi/k))}/3 and I_2 is the 2 \times 2 identity matrix.

Notice that the clusters are more separated, i.e., generated data indicates more clear clusters as d increases in either direction with d=0 indicating one cluster in the data. For a fixed d, when distribution="bvnormal", the clustering gets stronger if the variance of each component, sd^2, gets smaller, and clustering gets weaker as the variance of each component gets larger where default is sd=d\sqrt{2 (1-cos(2 \pi/k))}/3.

Usage

rrot.clust(
  n,
  k,
  d,
  sd = d * sqrt(2 * (1 - cos(2 * pi/k)))/3,
  distribution = c("uniform", "bvnormal")
)

Arguments

n

A positive integer representing the number of points to be generated from all the clusters

k

A positive integer representing the number of clusters to be generated

d

Radial shift indicating the level of clustering in the data. Larger absolute values in either direction (i.e., positive or negative) would yield stronger clustering.

sd

The standard deviation of the components of the bivariate normal distribution with default sd=d\sqrt{2 (1-cos(2 \pi/k))}/3, used only when distribution="bvnormal".

distribution

The argument determining the distribution of each cluster. Takes on values "uniform" and "bvnormal" whose centers are d units apart along the horizontal direction.

Value

A list with the elements

type

The type of the clustering pattern

parameters

The number of clusters, k, and the radial shift, d, representing the level of clustering (for both distribution types) and standard deviation, sd, for the bivariate normal distribution only.

gen.points

The output set of generated points from the k clusters.

desc.pat

Description of the clustering pattern

mtitle

The "main" title for the plot of the point pattern

num.points

The number of generated points.

xlimit, ylimit

The possible ranges of the x- and y-coordinates of the generated points

Author(s)

Elvan Ceyhan

See Also

rdiag.clust and rhor.clust

Examples

n<-100;  #try also n<-50; n<-1000;
d<- 1.5 #try also -1, 1, 1.5, 2
k<-3 #try also 5
#data generation
Xdat<-rrot.clust(n,k,d)
Xdat

summary(Xdat)
plot(Xdat,asp=1)
plot(Xdat)

#data generation (bvnormal)
n<-100;  #try also n<-50; n<-1000;
d<- 1.5 #try also -1, 1, 1.5, 2
k<-3 #try also 5
Xdat<-rrot.clust(n,k,d,distr="bvnormal") #also try Xdat<-rrot.clust(n,k,d,sd=.5,distr="bvnormal")
Xdat

summary(Xdat)
plot(Xdat,asp=1)
plot(Xdat)


nnspat documentation built on May 29, 2024, 10:03 a.m.