View source: R/NNCTFunctions.r
NNsub | R Documentation |
Returns the index (indices) of the nearest neighbor(s) of subject i (other than subject i) among the indices of points
provided in the subsample ss
using the given data set or IPD matrix x
. The indices in ss
determine the
columns of the IPD matrix to be used in this function.
It will yield a vector
if there are ties, and subject indices correspond to rows (i.e. rows 1:n
) if x
is the data set and to rows or columns if x
is the IPD matrix.
The argument is.ipd
is a logical argument (default=TRUE
) to determine the structure of the argument x
.
If TRUE
, x
is taken to be the inter-point distance (IPD) matrix, and if FALSE
, x
is taken to be the data set
with rows representing the data points.
NNsub(ss, x, i, is.ipd = TRUE, ...)
ss |
indices of subjects (i.e., row indices in the data set) among with the NN of subject is to be found |
x |
The IPD matrix (if |
i |
index of (i.e., row number for) the subject whose NN is to be found. |
is.ipd |
A logical parameter (default= |
... |
are for further arguments, such as |
Returns a list
with the elements
base.ind |
index of the base subject |
ss.ind |
the index (indices) i.e. row number(s) of the NN of subject i among the subjects with indices
provided in |
ss.dis |
distance from subject i to its NN among the subjects in |
Elvan Ceyhan
NN
and kNN
#3D data points bura n<-20 #or try sample(1:20,1) Y<-matrix(runif(3*n),ncol=3) ipd<-ipd.mat(Y) #indices of the subsample ss ss<-sample(1:n,floor(n/2),replace=FALSE) NNsub(ss,ipd,2) NNsub(ss,Y,2,is.ipd = FALSE) NNsub(ss,ipd,5) #1D data points n<-15 X<-as.matrix(runif(n))# need to be entered as a matrix with one column #(i.e., a column vector), hence X<-runif(n) would not work ipd<-ipd.mat(X) #two class case clab<-sample(1:2,n,replace=TRUE) #class labels #indices of the subsample ss ss<-sample(1:n,floor(n/2),replace=FALSE) NNsub(ss,ipd,2) NNsub(ss,ipd,5) #with possible ties in the data Y<-matrix(round(runif(60)*10),ncol=3) ipd<-ipd.mat(Y) ss<-sample(1:20,10,replace=FALSE) #class labels NNsub(ss,ipd,2) NNsub(ss,ipd,5)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.