La librería psmr tiene como objetivo proveer a investigadores de mercado y usuarios de R de una herramienta sencilla para la realización de análisis de precios a partir de la metodología Price Sensitivity Meter.
En este momento la librería se encuentra en fase de desarrollo. Cualquier error que se detecte se agradecería que se reportara al correo electrónico que aparece en DESCRIPTION. Por otra parte, esto es un proyecto de software libre que se distribuye sin garantía alguna.
Su instalación debe realizarse desde el repositorio de github donde se encuentra alojado actualmente.
# library(devtools)
# devtools::install_github("kintero/psmr")
A continuación se muestra como utilizar las funciones de la librería.
El primer paso es realizar el análisis con la función psm(). La función tiene 6 parámetros pero en este caso se utilizarán 5, el primero está reservado para el data.frame que contiene los datos y los 4 siguientes son para los nombres de las columnas que contienen las respuesta acerca del precio “muy barato”, “barato”, “caro” y “muy caro” en ese orden. Es muy importante tener siempre claro el orden.
Esta función devuelve un objeto de la clase “psm”.
set.seed(455)
dat <- data.frame(
"toocheap"=rpois(400, 4)+runif(50, 0, 1)
)
dat$cheap<-dat$toocheap+runif(50, 1, 2)
dat$expensive<-dat$cheap+runif(50, 2, 4)
dat$tooexpensive<-dat$expensive+runif(50, 3, 4)
head(dat)
## toocheap cheap expensive tooexpensive
## 1 8.464035 10.385196 12.820570 16.75764
## 2 5.503831 6.506160 9.824740 12.90410
## 3 4.579722 6.233555 8.909305 12.55697
## 4 5.880382 7.635859 11.025374 14.51248
## 5 8.881922 10.352509 13.552161 16.79526
## 6 6.915183 8.403432 12.403323 15.78760
library(psmr)
## Loading required package: lattice
psmObject<-psm(dat, "toocheap", "cheap", "expensive", "tooexpensive")
Visualización y resultados.
plot(psmObject)
summary(psmObject)
## Group Min Max Indifference Optimal
## 1 Generic 6.926399 9.659121 7.702996 8.9163
Para segmentar se ha añadido el parámetro by en donde es necesario indicar la columna que contiene la variable categórica que clasifica las observaciones. En el ejemplo se le llama a esta variable “cluster”.
dat$cluster<-sample(c("group_1", "group_2", "group_3"), 400, replace = TRUE)
head(dat)
## toocheap cheap expensive tooexpensive cluster
## 1 8.464035 10.385196 12.820570 16.75764 group_2
## 2 5.503831 6.506160 9.824740 12.90410 group_1
## 3 4.579722 6.233555 8.909305 12.55697 group_2
## 4 5.880382 7.635859 11.025374 14.51248 group_1
## 5 8.881922 10.352509 13.552161 16.79526 group_3
## 6 6.915183 8.403432 12.403323 15.78760 group_3
psmObject<-psm(dat, "toocheap", "cheap", "expensive", "tooexpensive", by="cluster")
Visualización y resultados.
plot(psmObject)
summary(psmObject)
## Group Min Max Indifference Optimal
## 1 group_1 6.755660 9.352435 7.422272 8.898646
## 2 group_2 6.920864 9.640709 7.689929 8.861150
## 3 group_3 7.075111 9.902194 7.917916 8.865499