# Example 1: i.i.d data type
library(quantreg)
n = 200
Z1 <- rexp(n,1)
Z2 <- rbinom(n,1,0.5)
Z <- cbind(Z1,Z2)
epsilon <- rnorm(n,0,1)
X <- runif(n,-2,1)
psi <- c(-1,0)
k <- length(psi)
PSI <- matrix(rep(psi,rep(n,k)),ncol=k)
XP <- matrix(rep(X,k),nrow=n)
XR <- cbind(1,X,pmax((XP-PSI),0),Z)
bet <- c(1,-1,0,0,sqrt(3),-sqrt(3))
Y <- XR %*% bet + epsilon
obj <- KinkTest(y=Y,thre.x=X,cont.z=Z,
bandwidth_type=c("Hall-Sheather"))
obj$pv
if (FALSE) {
# Example 2: longitudinal data
library(quantreg)
N = 200
T = 5
subject = rep(1:N,each=T)
NT = N*T
Z1 <- rexp(NT,1)
Z2 <- rbinom(NT,1,0.5)
Z <- cbind(Z1,Z2)
epsilon <- rnorm(NT,0,1)
X <- runif(NT,-2,1)
psi <- c(-1,0)
k <- length(psi)
PSI <- matrix(rep(psi,rep(NT,k)),ncol=k)
a <- rnorm(N,0,1)
A <- rep(a,each=T)
XP <- matrix(rep(X,k),nrow=NT)
XR <- cbind(1,X,pmax((XP-PSI),0),Z)
bet <- c(1,-1,0,0,sqrt(3),-sqrt(3))
Y <- XR %*% bet + A + epsilon
obj <- KinkTest(y=Y,thre.x=X,cont.z=Z,id=subject,
bandwidth_type=c("Hall-Sheather"))
obj$pv
}
Run the code above in your browser using DataLab