使用R对消费者购买行为进行回归

时间:2014-02-02 20:02:12

标签: r logistic-regression

我正在追求一个项目作为我的MBA的一部分,虽然我有一些基本的统计背景,但我对深入的回归分析并不熟悉。我希望使用R进行分析,以便学习新工具。我对R很新,所以你愿意提供的细节越多越好。

以下是我正在使用的数据的说明。如果我应该以某种方式改变它,我确实有更精细的数据。数据描述了消费者购买产品(或不购买)的选择 - 所以我的二元结果是购买/不购买。他们购买一种产品(比如产品X),但在此过程中会看到产品A,B,C和X.我想根据他们对产品A,B和C的贡献将X的购买价值归因于产品A,B和C.卖X的可能性。

在购买之前看到的产品数量可变,确实变得困难,真的是1 - > n个产品。每个的时间也可能是一个因素。如果消费者今天评论产品并且今天购买可能与购买前2周检查产品不同。我也为每个产品提供准确的时间信息。

我的问题是:如何构建回归模型以考虑同一消费者的动态数量的自变量?

如果我不够具体,请告诉我。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在矢量中指定所有独立人物的名称:

x <- c("A","B","C")

依赖于y:

y <- "X"

然后构建一个可以传递给lm的公式:

> model <- as.formula(paste(y,paste(x,collapse="+"), sep="~"))
> model
X ~ A + B + C

通过简单地修改你的x向量并重新运行它,它将考虑任意数量的独立数据。如果你把它放到一个函数中,你所要做的就是将独立元素的向量传递给它,它将返回给你模型:

createModel <- function(x) {
   model <- as.formula(paste(y,paste(x,collapse="+"), sep="~"))
   return(model)
}

当你跑步时,你得到:

> createModel(c("A","B"))
X ~ A + B
> createModel(c("A","B","D","E"))
X ~ A + B + D + E

假设你已经指定了y当然。如果您愿意,也可以将它作为参数添加到函数中。希望这大致是你想要的。