diff --git a/NAMESPACE b/NAMESPACE index ce049c963d8a4dbaecfc4662dfcd227a53e9f141..7cb0032e6e2431ce5dc0d7c3ad3658ff9f687399 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -2,8 +2,8 @@ export("%>%") export(createSets) +export(poetest) export(quicktexregapollo) export(remGOF) export(subcoef) -export(takedraws) importFrom(magrittr,"%>%") diff --git a/R/poetest.R b/R/poetest.R index d04c68099eb14ac48d8235263d014a4bb8c9a964..74610a4b586456169b0cf69522ffd9fb7d09b08d 100644 --- a/R/poetest.R +++ b/R/poetest.R @@ -7,59 +7,64 @@ #' @param model1 Model from which to take the first WTP values #' @param model2 Model from which to take the second WTP values #' @param att Vector of attributes whose WTP values you want to compare -#' @param price nmae of the price coefficient +#' @param price name of the price coefficient #' #' #' @return a p value associated with "WTP1>WTP2" #' @export #' -#' @examples { +#' @examples \dontrun{ #' poeresults<-poetest(n=5000, model1 = clmodels[[model_1]],model2 = clmodels[[model_2]], att=attr, price = "bcost") #' } -## Extract relevant elements of models -takedraws <-function(n=10000, beta,vc) { - k=length(beta) - cholesky = chol(vc) - draw=matrix(nrow = n, ncol=k) - - colnames(draw) <-names(beta) +poetest <- function(n, model1, model2, att, price){ - for (d in 1:n) { - draw[d,] <- beta +t(cholesky)%*%stats::rnorm(k) + + ## Extract relevant elements of models + + takedraws <-function(n=10000, beta,vc) { + + + k=length(beta) + cholesky = chol(vc) + + draw=matrix(nrow = n, ncol=k) + + colnames(draw) <-names(beta) + + for (d in 1:n) { + draw[d,] <- beta +t(cholesky)%*%stats::rnorm(k) + } + + + + return(draw) } - - - - return(draw) -} - - -getalldraws <- function(n, model1, model2, att, price) { - - allmodels <- list(model1,model2) - - model_draws <- list() - - for (m in 1:2) { - - model_draws[[m]] <-takedraws(n,allmodels[[m]][["estimate"]],allmodels[[m]][["varcov"]]) - - model_draws[[m]] <-cbind(model_draws[[m]], wtp= model_draws[[m]][,att]/model_draws[[m]][,price]) - } - - return(model_draws) + + getalldraws <- function(n, model1, model2, att, price) { + + allmodels <- list(model1,model2) + + model_draws <- list() + + for (m in 1:2) { + + model_draws[[m]] <-takedraws(n,allmodels[[m]][["estimate"]],allmodels[[m]][["varcov"]]) + + model_draws[[m]] <-cbind(model_draws[[m]], wtp= model_draws[[m]][,att]/model_draws[[m]][,price]) + } + + return(model_draws) } + + + draws<-getalldraws(n, model1, model2, att, price) -poetest <- function(n, model1, model2, att, price){ - -draws<-getalldraws(n, model1, model2, att, price) - -wtpvec <- cbind(wtp1= draws[[1]][,"wtp"], wtp2= draws[[2]][,"wtp"]) + wtpvec <- cbind(wtp1= draws[[1]][,"wtp"], wtp2= draws[[2]][,"wtp"]) diff --git a/man/takedraws.Rd b/man/takedraws.Rd deleted file mode 100644 index 3b976395f3642ea2685b653c7e4e73facb38b395..0000000000000000000000000000000000000000 --- a/man/takedraws.Rd +++ /dev/null @@ -1,30 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/poetest.R -\name{takedraws} -\alias{takedraws} -\title{Perform the Poe (2005) test on different discrete choice models} -\usage{ -takedraws(n = 10000, beta, vc) -} -\arguments{ -\item{n}{number of draws} - -\item{model1}{Model from which to take the first WTP values} - -\item{model2}{Model from which to take the second WTP values} - -\item{att}{Vector of attributes whose WTP values you want to compare} - -\item{price}{nmae of the price coefficient} -} -\value{ -a p value associated with "WTP1>WTP2" -} -\description{ -Perform the Poe (2005) test on different discrete choice models -} -\examples{ -{ -poeresults<-poetest(n=5000, model1 = clmodels[[model_1]],model2 = clmodels[[model_2]], att=attr, price = "bcost") -} -}