如何计算NPS(净发起人得分)结果中的误差幅度?


21

我将让Wikipedia解释如何计算NPS

通过在0到10的评分等级上向客户提出一个问题来获得净发起人得分,其中“极有可能”是10,“完全没有可能”是0:“您向我们推荐公司的可能性有多大?朋友还是同事?” 根据他们的回答,客户可分为三类之一:促销员(9-10级),被动员(7-8级)和批评者(0-6级)。然后从促进者的百分比中减去批评者的百分比,以获得净促进者得分(NPS)。NPS可以低至-100(每个人都是破坏者)或高至+100(每个人都是启动子)。

几年来我们一直定期进行这项调查。每次我们都会收到数百个回复。结果分数在一段时间内变化了20-30分。我正在尝试弄清楚哪些得分变动很重要(如果有)。

如果这真的太困难了,那么我也有兴趣尝试根据计算的基础找出误差范围。每个“桶”(促销者,被动者,批评者)的误差幅度是多少?甚至,如果我只看分数的平均值,将每次调查的数据减少到一个数字,误差幅度是多少?那能带我到任何地方吗?

这里的任何想法都是有帮助的。除了“不使用NPS”。这个决定是我改变的能力!

Answers:


32

假设我们从中假设您是随机抽样的总体,其中包含比例的启动子,p 0的无源对象和p 1的贬低者,其中p 1 + p 0 + p 1 = 1。要对NPS进行建模,请想象给一个大帽子装满大量门票(每个人口中一张),以给定的比例标记+ 1代表促销员,0代表被动员,-1代表贬低者,然后画n他们是随机的。的p1p0p1p1+p0+p1=1+101n样本 NPS是抽取的票证的平均值。在真正的 NPS被计算为所有的帽子门票的平均值:这是预期值(或期望的帽子)。

真实NPS的一个很好的估计是样本NPS。样本NPS也有期望。可以将其视为所有可能样本NPS的平均值。这个期望恰好等于真实的NPS。样本NPS 的标准误差是一个样本与另一个样本之间样本NPS通常变化的量度。幸运的是,我们不必计算所有可能的样本即可找到SE:可以通过计算帽子中票证的标准偏差并除以来更简单地找到它。。(当样本在总人口中占相当大的比例时,可以进行一些小的调整,但这在这里是不需要的。)ñ

例如,考虑群体的启动子,p 0 = 1 / 3的无源元件,和p - 1 = 1 / 6诽谤者。真正的NPS是p1个=1个/2p0=1个/3p1=1/6

NPS=1×1/2+0×1/3+1×1/6=1/3.

因此,方差

Var(NPS)=(1NPS)2×p1+(0NPS)2×p0+(1NPS)2×p1=(11/3)2×1/2+(01/3)2×1/3+(11/3)2×1/6=5/9。

标准偏差是本平方根,大约等于0.75。

在,比方说,样品,你会因此期望观察的NPS周围1 / 3 = 33%的具有标准误差0.75 / 3241个/3=334.1%。0.75/324=4.1

实际上,您不知道帽子中票证的标准偏差,因此您可以使用样本的标准偏差进行估算。当除以样本大小的平方根时,它将估算NPS的标准误差:此估算值是误差幅度(MoE)。

如果您观察到每种类型的客户数量可观(通常每个客户约有5个或更多),则样本NPS的分布将接近正态分布。这意味着您可以用通常的方式解释教育部。 特别是,样本NPS的时间的大约2/3会在真实NPS的一个MoE内,而样本NPS的时间的大约19/20(95%)将在真实NPS的两个MoE内。在该示例中,如果误差幅度确实为4.1%,我们将有95%的置信度认为调查结果(样本NPS)在总体NPS的8.2%以内。

每个调查都有其自己的误差范围。要比较两个这样的结果,您需要考虑每个结果中可能出现的错误。当测量大小大致相同时,可以通过勾股定理找到其的标准误差:取其平方和的平方根。例如,如果一年的MoE为4.1%,而另一年的MoE为3.5%,则可以粗略估算出左右的误差范围这两个结果的差异为 3.5 2 + 4.1 2 = 5.4%。在这种情况下,只要两次调查的差异等于或大于10.8%,您就可以以95%的信心得出结论,人口NPS从一项调查更改为下一项调查。3.52+4.12

在一段时间内比较许多调查结果时,更复杂的方法会有所帮助,因为您必须应对许多单独的误差范围。当误差范围都非常相似时,粗略的经验法则是将三个或更多MoE的变化视为“重大”。在此示例中,如果MoE徘徊在4%左右,那么在几次调查中,大约12%或更大的变化应该引起您的注意,较小的变化可以有效地消除为调查误差。无论如何,在考虑调查之间的差异可能意味着什么时,此处提供的分析和经验法则通常是一个很好的起点。

001个/ññ


1
这是一个了不起的答案。我非常感谢。
丹·邓恩

1
通常不是将“误差范围”解释为从样本中得出的统计数据的95%置信区间吗?也就是说,该统计数据的抽样标准误差(或标准偏差)约为1.96。您可以使用误差范围作为“统计的标准偏差”或“标准误差”的同义词。
彼得·埃利斯

1
谢谢@whuber。只要明确定义了术语(“矮胖”原则),我就绝不争辩这个术语,而且我认为这匹马已经在这一术语上保持了一致。我仅有的证据是在stats.stackexchange.com/questions/21139/…上回答我自己的问题,该证据正确地指出,误差幅度通常(不是普遍)以估算值的百分比表示。
彼得·埃利斯

2
@Charles,我认为whuber正在做一个离散随机变量的基本方差。参见stat.yale.edu/Courses/1997-98/101/rvmnvar.htm
B_Miner

2
V一种[R=p1个+p-1个-ñP小号2

3

您也可以对连续变量使用方差估计量。实际上,相对于随机离散变量的方差估计量,我更喜欢它,因为存在众所周知的用于计算样本方差的更正:https : //en.wikipedia.org/wiki/Unbiased_estimation_of_standard_deviation如其他人所述,Whubers解决方案基于人口公式。但是,由于您正在进行调查,因此我很确定您已经绘制了一个样本,因此我建议使用无偏估计量(将平方和除以n-1,而不仅是除以n)。当然,对于大样本量,有偏估计和无偏估计之间的差异实际上是不存在的。

如果样本量中等,我也建议使用t检验程序,而不要使用z评分方法:https ://en.wikipedia.org/wiki/学生's_t-test

@whuber:由于其他人也曾问过:如何为您的随机离散变量方法计算方差/ sd的无偏样本估计量?我试图独自找到它,但没有成功。谢谢。


1

您可以潜在地使用引导程序来简化计算。在R中,代码为:

library(bootstrap)

NPS=function(x){
  if(sum(!x%%1==0)>0){stop("Non-integers found in the scores.")}
  if(sum(x>10|x<0)>0){stop("Scores not on scale of 0 to 10.")}
  sum(ifelse(x<7,-1,ifelse(x>8,1,0)))/length(x)*100
}

NPSconfInt=function(x,confidence=.9,iterations=10000){
  quantile(bootstrap(x,iterations,NPS)$thetastar,c((1-confidence)/2, 1-(1-confidence)/2))
}


npsData=c(1,5,6,8,9,7,0,10,7,8,
          6,5,7,8,2,8,10,9,8,7,0,10)    # Supply NPS data
hist(npsData,breaks=11)                 # Histogram of NPS responses

NPS(npsData)            # Calculate NPS (evaluates to -14)
NPSconfInt(npsData,.7)  # 70% confidence interval (evaluates to approx. -32 to 5)

您能否通过一开始就解释该方法是什么来扩展您的答案-足够详细,以至于某个根本不理解您的R代码的人仍然可以按照您的意图进行操作-并希望他们可以用自己喜欢的语言实施它?
Glen_b-恢复莫妮卡
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.