统计和大数据

对统计,机器学习,数据分析,数据挖掘和数据可视化感兴趣的人的问答

1
与PCA中完成的步骤相比,因素分析中完成的步骤
我知道如何执行PCA(主要成分分析),但是我想知道应该用于因子分析的步骤。 为了执行PCA,让我们考虑一些矩阵,例如:AAA 3 1 -1 2 4 0 4 -2 -5 11 22 20 我已经计算出其相关矩阵B = corr(A): 1.0000 0.9087 0.9250 0.9087 1.0000 0.9970 0.9250 0.9970 1.0000 然后,我完成了特征值分解[V,D] = eig(B),生成了特征向量: 0.5662 0.8209 -0.0740 0.5812 -0.4613 -0.6703 0.5844 -0.3366 0.7383 和特征值: 2.8877 0 0 0 0.1101 0 0 0 0.0022 PCA背后的总体思路是选择重要的分量,形成具有列特征向量的新矩阵,然后我们需要投影原始矩阵(在PCA中,它是零中心的)。但是在因子分析中,例如,我们应该选择具有大于奇异值的组件,然后我们还要使用因子旋转,请告诉我它是如何完成的?例如在这种情况下。111 请帮助我了解与PCA步骤相比的因素分析步骤。

3
如何规范未知分布的数据
我试图找到某种类型的重复测量数据的最合适的特征分布。 本质上,在我所在的地质学领域,我们经常使用放射线测定样品中的矿物(岩石块)的年代,以查明事件发生多久了(岩石冷却到阈值温度以下)。通常,将对每个样本进行几次(3-10)次测量。然后,取平均值和标准偏差。这是地质,因此样品的冷却年龄可以根据情况从扩展到年。σ 10 5 10 9μμ\muσσ\sigma10510510^510910910^9 不过,我有理由相信,测量不高斯:“离群”,要么宣布随意,或者通过一些标准,比如皮尔斯的标准[罗斯2003]或狄克逊Q检验[院长和迪克森,1951年],是相当这很常见(例如30分之一),而且这些数据几乎总是比较旧,这表明这些测量值通常偏向右侧。与矿物杂质有关的原因很容易理解。 因此,如果我能找到一个更好的分布,包括肥尾和偏斜,我认为我们可以构造更有意义的位置和比例参数,而不必如此迅速地分配离群值。也就是说,如果可以证明这些类型的测量是对数正态或对数拉普拉斯等,则可以使用比和更合适的最大似然性度量,它们是非稳健的,在这种情况下可能会有偏差系统右偏的数据。σμμ\muσσ\sigma 我想知道这样做的最好方法是什么。到目前为止,我有一个大约有600个样本的数据库,每个样本有2-10个(或大约)重复测量值。我尝试通过将样本除以均值或中位数来对样本进行归一化,然后查看归一化数据的直方图。这会产生合理的结果,并且似乎表明该数据具有典型的对数拉普拉斯算式: 但是,我不确定这是否是解决问题的适当方法,或者不确定我是否意识到有一些警告可能会影响我的结果,所以它们看起来像这样。是否有人对这种事情有经验并知道最佳实践?

1
为什么不总是使用引导CI?
我想知道自举CI(以及Bca中的BCa)对正态分布数据的性能如何。似乎有很多工作要检查它们在各种类型的分布上的性能,但是在正态分布的数据上找不到任何东西。由于首先学习似乎很显然,所以我认为论文太旧了。 我使用R引导程序包进行了一些蒙特卡洛仿真,发现引导CI与精确的CI一致,尽管对于小样本(N <20),它们倾向于比较宽松(较小的CI)。对于足够大的样本,它们基本上是相同的。 这使我想知道是否有充分的理由不总是使用引导程序。鉴于评估分布是否正常的难度很大,并且存在许多陷阱,因此,不管分布如何,都不决定和报告引导配置项似乎是合理的。我了解不系统地使用非参数测试的动机,因为它们的功能较少,但是我的模拟告诉我,引导CI并非如此。它们甚至更小。 让我感到困扰的一个类似问题是,为什么不总是使用中位数作为集中趋势的度量。人们通常建议使用它来表征非正态分布的数据,但是由于中位数与正态分布数据的平均值相同,为什么要加以区别?如果我们可以摆脱确定分布是否正常的过程,这似乎是非常有益的。 我很好奇您对这些问题的想法,以及它们是否曾经被讨论过。参考将不胜感激。 谢谢! 皮埃尔

5
如何在大量数据点中进行值的插补?
我的数据集非常大,大约缺少5%的随机值。这些变量相互关联。以下示例R数据集只是一个具有虚拟相关数据的玩具示例。 set.seed(123) # matrix of X variable xmat <- matrix(sample(-1:1, 2000000, replace = TRUE), ncol = 10000) colnames(xmat) <- paste ("M", 1:10000, sep ="") rownames(xmat) <- paste("sample", 1:200, sep = "") #M variables are correlated N <- 2000000*0.05 # 5% random missing values inds <- round ( runif(N, 1, length(xmat)) …
12 r  random-forest  missing-data  data-imputation  multiple-imputation  large-data  definition  moving-window  self-study  categorical-data  econometrics  standard-error  regression-coefficients  normal-distribution  pdf  lognormal  regression  python  scikit-learn  interpolation  r  self-study  poisson-distribution  chi-squared  matlab  matrix  r  modeling  multinomial  mlogit  choice  monte-carlo  indicator-function  r  aic  garch  likelihood  r  regression  repeated-measures  simulation  multilevel-analysis  chi-squared  expected-value  multinomial  yates-correction  classification  regression  self-study  repeated-measures  references  residuals  confidence-interval  bootstrap  normality-assumption  resampling  entropy  cauchy  clustering  k-means  r  clustering  categorical-data  continuous-data  r  hypothesis-testing  nonparametric  probability  bayesian  pdf  distributions  exponential  repeated-measures  random-effects-model  non-independent  regression  error  regression-to-the-mean  correlation  group-differences  post-hoc  neural-networks  r  time-series  t-test  p-value  normalization  probability  moments  mgf  time-series  model  seasonality  r  anova  generalized-linear-model  proportion  percentage  nonparametric  ranks  weighted-regression  variogram  classification  neural-networks  fuzzy  variance  dimensionality-reduction  confidence-interval  proportion  z-test  r  self-study  pdf 

2
我们可以在预测间隔内做出概率陈述吗?
我已经阅读了该站点上有关置信区间和预测区间解释的许多精彩讨论,但是其中一个概念仍然有些令人费解: 考虑OLS框架,我们已经获得了拟合模型。给我们一个并要求预测它的响应。我们计算,作为奖励,我们还围绕我们的预测提供了95%的预测间隔,从而获得了线性模型中预测极限的公式。我们将此预测间隔称为PI。y^=Xβ^y^=Xβ^\hat y = X\hat\betax∗x∗x^*x∗Tβ^x∗Tβ^x^{*T}\hat\beta 现在,以下哪个(或两个都不是)对PI的正确解释是正确的? 特别是对于,位于PI内的可能性为95%。x∗x∗x^*y(x∗)y(x∗)y(x^*) 如果给我们大量的 s,则此计算PI的过程将覆盖95%的真实响应。xxx 从线性回归预测间隔中的 @gung的措辞来看,似乎前者是正确的(尽管我很可能会误解。)解释1对我来说似乎是违反直觉的(在某种意义上,我们是从频繁分析中得出贝叶斯结论的)。如果它是正确的,是不是因为我们预测实现了的随机变量与估计一个参数? (编辑)奖金问题:假设我们知道真正的是什么,即生成数据的过程,那么我们可以讨论任何特定预测的概率,因为我们只是查看吗?ββ\betaϵϵ\epsilon 我对此的最新尝试:我们可以将预测间隔“概念上分解”(非常宽松地使用)分为两部分:(A)围绕预测均值响应的置信区间,以及(B)只是分位数的间隔集合误差项的范围。(B)我们可以在知道真实的预测均值的前提下做出概率陈述,但总体而言,我们只能将预测区间视为围绕预测值的频繁CI。这有点正确吗?

1
Lmer模型无法收敛
我的数据在这里描述当拟合重复测量方差分析时,什么会导致aov中的“ Error()模型为奇异误差”? 我试图使用来查看交互的效果,lmer所以我的基本情况是: my_null.model <- lmer(value ~ Condition+Scenario+ (1|Player)+(1|Trial), data = my, REML=FALSE) my.model <- lmer(value ~ Condition*Scenario+ (1|Player)+(1|Trial), data = my, REML=FALSE) 运行anova会给我带来显着的结果,但是当我尝试考虑随机斜率((1+Scenario|Player))时,模型将失败,并显示以下错误: Warning messages: 1: In commonArgs(par, fn, control, environment()) : maxfun < 10 * length(par)^2 is not recommended. 2: In optwrap(optimizer, devfun, getStart(start, rho$lower, rho$pp), : convergence …
12 r  lme4-nlme 


2
为什么这种分配是统一的?
我们正在调查贝叶斯统计检验,并且遇到一种奇怪的现象(对我来说至少是这样)。 考虑以下情况:我们有兴趣测量哪个人口A或B具有较高的转化率。对于健全性检查,我们将设置,也就是说,两组转换的可能性相等。我们使用二项式模型生成人工数据,例如pA=pBpA=pBp_A = p_BnA∼Binomial(N,pA)nA∼Binomial(N,pA)n_A \sim \text{Binomial}(N, p_A) 然后,我们尝试使用贝叶斯beta二项式模型估计以便获得每种转换率的后验,例如pA,pBpA,pBp_A, p_BPA∼Beta(1+nA,N−nA+1)PA∼Beta(1+nA,N−nA+1)P_A \sim \text{Beta}(1 + n_A, N - n_A +1 ) 我们的测试统计量是通过蒙特卡洛通过计算来计算的。S=P(PA>PB|N,nA,nB)S=P(PA>PB|N,nA,nB)S = P(P_A > P_B\; |\; N, n_A, n_B) 令我惊讶的是,如果,则。我的想法是,随着样本大小增加,它将以0.5为中心,甚至收敛到0.5 。 pA=pBpA=pBp_A = p_BS∼Uniform(0,1)S∼Uniform(0,1)S \sim \text{Uniform(0,1)}NNN 我的问题是,为什么 当时?p 甲 = p 乙S∼Uniform(0,1)S∼Uniform(0,1)S \sim \text{Uniform(0,1)}pA=pBpA=pBp_A = p_B 这是一些Python代码来演示: %pylab from scipy.stats import beta …

1
线性混合效应模型的报告结果
线性混合效应模型在我的生物学研究中并不常用,我需要报告我试图写的论文中使用的统计检验。我知道生物科学的某些领域(对依赖性的解决方案:使用多层次分析来容纳嵌套数据)已经开始出现对多层次建模的意识,但是我仍在尝试学习如何报告结果! 我的实验设计简而言之: *将受试者分配到四个治疗组中的一个 *在开始治疗后的不同天对因变量进行测量 *设计不平衡(治疗组中受试者人数不等,并且缺少某些天的测量值) *治疗A是参考类别 *我将数据集中在治疗的最后一天 我想知道治疗A(参考类别)是否比其他治疗(治疗结束)产生明显更好的结果。 我使用nlme在R中进行了分析: mymodel <- lme(dv ~ Treatment*Day, random = ~1|Subject, data = mydf, na.action = na.omit, + correlation = corAR1(form = ~1 |Subject), method = "REML") 输出(部分内容;为了简洁起见被截断)为: >anova(mymodel) numDF denDF F-value p-value (Intercept) 1 222 36173.09 <.0001 Treat 3 35 16.61 <.0001 Day …

2
情报平方计分和获胜者确定
有一个称为“情报平方”的NPR播客。每集都播放有关一些争议性声明的现场辩论,例如“第二修正案不再相关”或“对大学校园采取平权行动弊大于利”。四名代表辩论,两名代表议案,两名反对。 为了确定哪一方获胜,在辩论前后都要对观众进行投票。从绝对百分比上获得更多收益的一方被视为获胜者。例如: For Against Undecided Before 18% 42% 40% After 23% 49% 28% Winner: Against team -- The motion is rejected. 直觉上,我认为这种衡量成功的方法是有偏见的,我想知道如何以公平的方式对听众进行投票以确定赢家。 我立即在当前方法中看到了三个问题: 在极端情况下,如果一方以100%达成共识,那么他们只能平局或输球。 如果没有未定的决定,则初始协议较少的那一侧可被视为具有较大的样本量,可从中进行抽取。 未定的一面不太可能真正地未定。如果我们假设双方是两极分化的,那么如果我们被迫放弃一方,似乎我们先前对未定人群的信念应该是。Beta (#赞成,#反对)Beta(# For,# Against)\text{Beta}(\text{# For}, \text{# Against}) 鉴于我们必须依靠受众调查,是否有更公平的方法来判断谁获胜?
12 bayesian  rating 

2
方差-协方差矩阵解释
假设我们有一个线性模型,Model1并vcov(Model1)给出以下矩阵: (Intercept) latitude sea.distance altitude (Intercept) 28.898100 -23.6439000 -34.1523000 0.50790600 latitude -23.643900 19.7032500 28.4602500 -0.42471450 sea.distance -34.152300 28.4602500 42.4714500 -0.62612550 altitude 0.507906 -0.4247145 -0.6261255 0.00928242 对于此示例,此矩阵实际显示什么?我们可以为模型及其独立变量安全地做出哪些假设?

1
如何执行自举测试以比较两个样本的均值?
我有两个严重偏斜的样本,正在尝试使用自举比较t统计量的均值。 正确的做法是什么? 我正在使用的过程 当我知道原始数据或观察到的数据不是正态分布时,我会担心在最后一步中使用标准误差的适当性。 这是我的步骤: 引导程序-随机抽样替换(N = 1000) 为每个引导程序计算t统计量以创建t分布: T(b)=(X¯¯¯¯b1−X¯¯¯¯b2)−(X¯¯¯¯1−X¯¯¯¯2)σ2xb1/n+σ2xb2/n−−−−−−−−−−−−−√T(b)=(X¯b1−X¯b2)−(X¯1−X¯2)σxb12/n+σxb22/n T(b) = \frac{(\overline{X}_{b1}-\overline{X}_{b2})-(\overline{X}_1-\overline{X}_2) }{\sqrt{ \sigma^2_{xb1}/n + \sigma^2_{xb2}/n }} 通过获取t分布的和百分位数来估计t置信区间α/2α/2\alpha/21−α/21−α/21-\alpha/2 通过以下方式获取置信区间: CIL=(X¯¯¯¯1−X¯¯¯¯2)−T_CIL.SEoriginalCIL=(X¯1−X¯2)−T_CIL.SEoriginal CI_L = (\overline{X}_1-\overline{X}_2) - T\_{CI_L}.SE_{original} CIU=(X¯¯¯¯1−X¯¯¯¯2)+T_CIU.SEoriginalCIU=(X¯1−X¯2)+T_CIU.SEoriginal CI_U = (\overline{X}_1-\overline{X}_2) + T\_{CI_U}.SE_{original} ,其中 SE=σ2X1/n+σ2X2/n−−−−−−−−−−−−√SE=σX12/n+σX22/n SE = \sqrt{ \sigma^2_{X1}/n + \sigma^2_{X2}/n } 查看置信区间落在哪里,以确定均值是否存在显着差异(即非零) 我也查看了Wilcoxon秩和,但由于分布严重偏斜(例如,第75个== 95%),因此给出的结果并不十分合理。因此,我想进一步探讨自举t检验。 所以我的问题是: 这是合适的方法吗? 当我知道观测到的数据严重偏斜时,使用SE合适吗? 可能重复:首选哪种方法,引导测试或非参数基于等级的测试?

3
根据理论,拟合或其他方式选择分布更好吗?
这是一个哲学问题,但是我对其他有更多经验的人如何考虑分配选择感兴趣。在某些情况下,似乎很显然,理论可能最有效(小鼠尾巴的长度可能呈正态分布)。在很多情况下,可能没有理论来描述一组数据,因此,无论原始开发用来描述什么,您都可以使用非常适合您的数据。我可以想象使用其中的一个或另一个会遇到一些陷阱,然后当然存在一个问题,就是如果您真的不知道,也许应该只使用经验分布。 所以我想我真正要问的是:有人是否有一致的方式来处理/思考这个问题?您是否有任何资源可以建议对此进行良好处理?

2
在广义线性模型中检查残差的正态性
本文使用广义线性模型(二项式和负二项式误差分布)来分析数据。但是,在方法的统计分析部分中,有以下语句: ...然后通过使用Logistic回归模型对状态数据进行建模,并使用广义线性模型(GLM)对觅食时间数据进行建模。使用具有对数链接函数的负二项式分布来对觅食时间数据进行建模(Welsh等人,1996),并通过检验残差来验证模型的适当性(McCullagh&Nelder 1989)。Shapiro–Wilk或Kolmogorov–Smirnov检验用于根据样本量检验正态性;在分析之前,对数据进行对数转换,以符合正态性。 如果他们假设二项式和负二项式误差分布,那么他们肯定不应该检查残差的正态性吗?

1
如何训练HMM进行分类?
因此,我了解到,在训练HMM进行分类时,标准方法是: 将您的数据集分为每个类别的数据集 每班训练一名HMM 在测试集中比较每个模型对每个窗口进行分类的可能性 但是,我该如何在每堂课上训练HMM?我是否只是将有关一类的数据串联在一起?但是时间序列数据不是按顺序排列的吗?如果我这样做,那是说某些数据点是连续的,而不是连续的吗? 更具体地说,我有一些EEG数据,它是一个96xT矩阵,其中有96个特征向量,这些特征向量是来自不同通道的不同频率的功率谱密度,T是信号的时间长度(在某些采样率下) 可以将其划分为多个窗口,这些窗口可以从实验协议中得知(数据带有标签),因此我可以为每个类收集96 * t矩阵的集合。其中t小于T并表示每个窗口的大小。 然后如何在此数据上训练HMM?如果有帮助,我尝试使用pmtk3工具包,但我愿意使用任何东西-它必须能够处理实值观测值,因为功率谱密度是连续的而不是离散的(默认的MATLAB工具箱只能处理离散观察)。 目的是能够根据训练过的标记数据将脑电数据窗口分类为给定的心理状态。它是使用Berlin BCI Competition数据的人机界面问题。

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.