您在其中一条评论中链接的视频引用了成分数据。如果您尝试比较加起来为的百分比,这将是一个问题,但您的问题并非如此。无论您将变量表示为计数还是百分比,它都不会限制变量可能值的范围。100%independent contractorsoffsite workers
就计数(整数值)性质而言,independent contractors您可以应用泊松、半泊松或负二项式模型:
我创建了一个虚构的数据集设计来拟合泊松回归模型。我将使用R。
泊松回归模型的形式为。因此,对于变量的将作为泊松变量分布,均值因此,我们可以模拟一个适合泊松回归模型的数据集,如下所示(请参阅这篇文章,了解避免独立承包商数量出现高值或零值的截断技巧):log(Y)=β0+β1XX=xlog(E[Y|x])λ=exp(β0+β1x).
set.seed(0) # Setting the seed value to make findings reproducible.
co = 70 # The number of companies (firms) you have data on.
n = 1000 # Dirty trick to get "tons" of point to truncate later and end up with 70.
i = 0 # Intercept chosen to be zero hoping to simplify things.
sl = .04 # The slope or beta1 in the equation in the previous paragraph.
# Assuming the % of off-site workers is varies uniformly from 0% to 100%:
offsite = runif(n, 0, 100)
mu = exp(i + sl * offsite) # Getting the means
# Generating the number of independent contractors:
indep = rpois(n, mu)
# Creating data set with offsite % and no. contractors in two columns:
dat = as.data.frame(cbind(offsite, indep))
# Truncating the data to obtain data points avoiding 0 contractors
# ...and keeping max. to < 45 (sounds like a real-life plausible max):
dat = dat[which(dat$indep > 0 & dat$indep < 45), ]
# Selecting only 70 of these truncated data points:
dat = dat[sample(nrow(dat),co), ]; rownames(dat) = NULL
我们知道泊松模型的拟合在设计上是完美的,因此我们可以应用它来证明分包公司数量与远程办公人员百分比之间的关联;然而,在现实生活中,情况并非如此。因此,不假设均值和方差相等的负二项式回归模型将更常用于处理过度分散。在基本的统计 R 包中,我们还可以运行准泊松回归来处理这个问题:
> fit = glm(indep ~ offsite, family = "quasipoisson", data = dat)
> summary(fit)
Call:
glm(formula = indep ~ offsite, family = "quasipoisson", data = dat)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.96453 -0.61346 -0.08643 0.34988 2.16355
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.238500 0.108206 2.204 0.0309 *
offsite 0.036529 0.001404 26.009 <2e-16 ***
不完全是我们最初选择的截距和斜率,但数据已被截断,我们只有 70 个点。并且它显示了场外工人百分比与独立承包商数量之间的显着关联(根据设计,p ~):场外工人数量每增加,就会有一个正预期分包公司数量的对数差异为。或者,场外工人每增加一个百分点,分包商就会增加01%0.037e0.037 (×)
这些图表显示了独立承包商的数量与非现场工人的百分比之间的关系:

查看这种关系的另一种方法是通过 Spearman 相关性(更符合您的原始问题)。结果非常接近默认的 Pearson 相关性,如上面 David Wright 的正确答案所示:
> cor(dat$offsite, dat$indep, method="pearson")
[1] 0.90324
> cor(dat$offsite, log(dat$indep), method="spearman")
[1] 0.9510245
在给定左上图的情况下尝试对因变量进行对数变换并运行 OLS 回归是很有趣的(请注意,这不等同于泊松回归(或负二项式))。如果我们这样做,我们会发现斜率:
> lm(log(indep) ~ offsite, data = dat)$coef[2]
offsite
0.03926557
相当于_
> cor(dat$offsite, log(dat$indep)) * sd(log(dat$indep)) / sd(dat$offsite)
[1] 0.03926557
因为
r=β1∑ni=1(xi−x¯)2∑ni=1(yi−y¯)2−−−−−−−−−−−−√=β1SxxSyy