rdiag.clust: Generation of Points with Clusters along the First Diagonal

rdiag.clustR Documentation

Generation of Points with Clusters along the First Diagonal

Description

An object of class "Clusters".

Generates n 2D points with k (k ≥ 2) clusters along the first diagonal where about n/k points belongs to each cluster.

If distribution="uniform", the points are uniformly generated in their square supports where one square is the unit square (i.e., with vertices (0,0), (1,0), (1,1),(0,1)), and the others are unit squares translated j √{2} d units along the first diagonal for j=1,2,…,k-1 (i.e. with vertices (j d,j d), (1+j d,j d), (1+j d,1+j d),(j d,1+j d)).

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=((1+j d)/2,(1+j d)/2) for j=0,1,…,k-1 and the covariance matrix sd I_2, where 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 positive or negative 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=1/6.

Usage

rdiag.clust(n, k, d, sd = 1/6, distribution = c("uniform", "bvnormal"))

Arguments

n

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

k

A positive integer representing the number of clusters to be generated

d

Shift in the first diagonal 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=1/6, 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 first diagonal direction.

Value

A list with the elements

type

The type of the clustering pattern

parameters

The number of clusters, k, the diagonal 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 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

rhor.clust and rrot.clust

Examples

n<-20  #or try sample(1:20,1);  #try also n<-50; n<-1000;
d<-.5 #try also -75,.75, 1
k<-3 #try also 5

#data generation
Xdat<-rdiag.clust(n,k,d)
Xdat

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

#data generation (bvnormal)
n<-20  #or try sample(1:20,1);  #try also n<-50; n<-1000;
d<-.5 #try also -.75,.75, 1
k<-3 #try also 5
Xdat<-rdiag.clust(n,k,d,distr="bvnormal") #try also Xdat<-rdiag.clust(n,k,d,sd=.09,distr="bvnormal")
Xdat

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


nnspat documentation built on Aug. 30, 2022, 9:06 a.m.