Questions tagged «r»

对于(a)涉及“ R”作为问题的关键部分或预期答案的任何* on-topic *问题,请使用此标签;&(b)关于如何使用“ R”并非“正当”。

1
图解线性混合效应模型结果的图
我一直在使用R中的线性混合效果建模来分析一些数据。我打算用结果制作海报,我只是想知道是否有人对混合效果模型有经验,可以建议使用哪些图表来说明结果?模型。我在考虑残差图,拟合值与原始值的图等。 我知道这很大程度上取决于我的数据,但我只是想尝试一种最佳方法来说明线性混合效应模型的结果。我在R中使用nlme软件包。 谢谢

2
了解GLM中的虚拟(手动或自动)变量创建
如果在glm公式中使用了因子变量(例如,具有M和F级的性别),则会创建一个或多个虚拟变量,并且可以在glm模型摘要中找到它们以及相关的系数(例如,genderM) 如果不是代替R以此方式分解因子,而是将因子编码为一系列数字0/1变量(例如,genderM(1表示M,0表示F),genderF(1表示F,0表示0)。 M),然后将这些变量用作glm公式中的数字变量,系数结果会有所不同吗? 基本上,问题是:在使用因子变量和数值变量时,R是否使用不同的系数计算? 后续问题(可能由上述方法回答):除了让R创建虚拟变量的效率高之外,将因子重新编码为一系列数字0,1变量并在模型中使用这些变量是否还有其他问题?

2
如何使用R估计Cox模型中的基线危害函数
我需要估计基线风险函数以时间依赖性Cox模型λ0(t)λ0(t)\lambda_0(t) λ(t)=λ0(t)exp(Z(t)′β)λ(t)=λ0(t)exp⁡(Z(t)′β)\lambda(t) = \lambda_0(t) \exp(Z(t)'\beta) 在我学习生存过程时,我记得累积危险函数的直接导数()并不是一个好的估计器,因为Breslow估计器提供了阶跃函数。λ0(t)dt=dΛ0(t)λ0(t)dt=dΛ0(t)\lambda_0(t) dt = d\Lambda_0(t) 那么,R中是否可以直接使用任何函数?或对此主题有任何参考吗? 我不确定是否值得提出另一个问题,所以我只添加一些背景,为什么基线危害功能对我很重要。下面的公式估算一个受试者的生存时间大于另一个受试者的生存时间的概率。在Cox模型设置下,需要基线危险函数。 λ0(t)λ0(t)\lambda_0(t) P(T1>T2)=−∫∞0S1(t)dS2(t)=−∫∞0S1(t)S2(t)λ2(t)dtP(T1>T2)=−∫0∞S1(t)dS2(t)=−∫0∞S1(t)S2(t)λ2(t)dtP(T_1 > T_2 ) = - \int_0^\infty S_1(t) dS_2(t) = - \int_0^\infty S_1(t)S_2(t)\lambda_2(t)dt
13 r  survival  cox-model 

1
相互作用项和高阶多项式
如果我有兴趣拟合线性解释变量和与因变量具有二次关系的另一个解释变量之间的双向相互作用,我是否必须同时包括与二次分量的相互作用和与线性变量的相互作用模型中的组件?例如: 反过来在我之前的线程上构建: 曲率项和模型选择,如果这是在R中使用的模型选择分析,其中包含许多解释变量,则输出的模型包含交互项,其中包括二次项aaabbbyyyy∼a+b+b2+ab+ab2y∼a+b+b2+ab+ab2 y\sim a+b+b^2+ab+ab^2 MuMIna:b2a:b2a:b^2仅当在同一模型中还存在与线性成分的相互作用项以及,和作为直接效应时才有效吗?a:ba:ba:baaabbbb2b2b^2

1
如何使用R计算临界t值?
抱歉,这是一个新问题。我正在尝试第一次自学统计学。我想我的基本过程已经停滞了,但是我很难用R执行它。 因此,我正在尝试评估形式的多元线性回归中回归系数的重要性 y^=Xβ^y^=Xβ^ \hat y = X \hat \beta 我认为用于测试的t统计量由H0:β^j=0,Ha:β^j≠0H0:β^j=0,Ha:β^j≠0H_0: \hat \beta_j = 0, H_a: \hat \beta_j \neq 0 t0=β^j−0se(β^j)=β^jσ^2Cjj−−−−−√=β^jCjjSSRes/(n−p)−−−−−−−−−−−−−−√t0=β^j−0se(β^j)=β^jσ^2Cjj=β^jCjjSSRes/(n−p)t_0 = \frac{\hat \beta_j - 0}{\text{se}(\hat \beta_j)} = \frac{\hat \beta_j}{\sqrt{\hat \sigma^2 C_{jj}}} = \frac{\hat \beta_j}{\sqrt{C_{jj} SS_{Res}/(n-p)}} 其中是对角线在条目。CjjCjjC_{jj}jthjthj^{th}(X′X)−1(X′X)−1(X'X)^{-1} 到目前为止,一切都很好。我知道如何使用R中的矩阵运算来计算所有这些值。但是为了拒绝null,这本书说我需要 |t0|>tα/2,n−p|t0|>tα/2,n−p|t_0| > t_{\alpha/2,n-p} 如何使用R 计算此临界值?tα/2,n−ptα/2,n−pt_{\alpha/2,n-p} 现在,我知道如何找到这些值的唯一方法是查看书后的表格。肯定有更好的办法。

2
计算RNA序列和ChIP芯片数据集之间的基因列表重叠的可能性
希望这些论坛上的人可以帮助我解决基因表达研究中的这一基本问题。 我对实验和对照组织进行了深度测序。然后,我获得了超出对照的实验样品中基因的倍数富集值。参考基因组有〜15,000个基因。与对照相比,我感兴趣的样本中的15,000个基因中有3,000个富集到某个临界值以上。 因此:A =总基因种群= 15,000 B = RNA-Seq富集的亚群= 3,000。 在先前的ChIP芯片实验中,我发现了400个被ChIP芯片丰富的基因。在400个ChIP芯片基因中,有3,000个富集RNA-Seq转录本的组中有100个基因。 因此:C =芯片上富含芯片的基因总数= 400。 仅凭偶然机会,我的100个ChIP芯片基因就会被RNA-Seq富集的可能性是多少?换句话说,最谨慎的方法是计算我观察到的B和C(100个基因)之间的重叠是否比仅凭偶然获得的重叠更好?到目前为止,根据我的读物,测试这一点的最佳方法是使用超几何分布。 我使用了一个在线计算器(stattrek.com),使用以下参数设置了超几何分布测试:-流行数量= 15,000-总体成功次数= 3,000-样本数量= 400,-成功数量= 100。对于超几何概率P(x = 100)= 0.00224050636447747我得到以下信息 B和C之间重叠的实际基因数量=100。这是否比偶然碰碰更好?如果任何一个基因被富集的机会是1:5(15,000个中的3,000个),看起来就不是这样。这就是为什么我不知道我上面计算的P(x = 100)是0.0022的原因。这等于偶然发生重叠的机会为0.2%。这不应该更高吗? 如果我从15,000个大列表中抽取了400个随机基因,那么这些基因中的任何80个都将被偶然地丰富(1:5)。实际上重叠的基因数量是100,所以这比偶然的情况好一点。 我还尝试提出一种使用R中的hyper或phyper函数的解决方案(使用我在另一篇文章中看到的):A =基因组中的所有基因(15,000)B =富含RNA-Seq的基因(3,000)C = ChIP芯片富集基因(400)这是R输入/输出(改编自先前的stackexchange帖子): > totalpop <- 15000 > sample1 <- 3000 > sample2 <- 400 > dhyper(0:2, sample1, totalpop-sample1, sample2) [1] 4.431784e-40 …

1
y轴在随机森林偏倚图中的意义
我正在使用RandomForestR包,并对如何在其偏相关图中解释Y轴的值感到困惑。帮助文档指出,该图是“变量对类概率的边际影响的图形描述”。但是,我仍然对y轴的确切含义感到困惑。 特别是,负值是什么意思? 对准确预测班级产生负面影响是什么意思? 这些图中最重要的特征是最大值,趋势形状等吗? 您可以将局部图与其他变量的局部图进行比较吗? 这些图如何与Maxent(一种分布建模软件)中创建的响应曲线进行比较?

1
如何阅读R的nls的拟合优度?
我试图解释nls()的输出。我已经阅读了这篇文章,但我仍然不明白如何选择最合适的。根据我的拟合,我有两个输出: > summary(m) Formula: y ~ I(a * x^b) Parameters: Estimate Std. Error t value Pr(>|t|) a 479.92903 62.96371 7.622 0.000618 *** b 0.27553 0.04534 6.077 0.001744 ** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 120.1 on 5 degrees …

1
优势比的荟萃分析是否基本没有希望?
在最近的一篇论文中,诺顿等人。(2018)指出[1][1]^{[1]} 当导致赔率估算的统计模型具有不同的解释变量时,无法比较来自同一研究的不同赔率,因为每个模型具有不同的任意比例因子。也不能将一项研究的优势比的幅度与另一项研究的优势比的幅度进行比较,因为不同的样本和不同的模型规格将具有不同的任意缩放因子。进一步的暗示是,在多项研究中,给定关联的比值比的大小无法在荟萃分析中进行综合。 一个小的模拟说明了这一点(R代码在问题的底部)。假设真实模型为: 进一步想象一下,由四个不同的研究人员使用逻辑回归分析了上述模型生成的相同数据。研究人员1仅包含作为协变量,研究人员2同时包含和,依此类推。四位研究人员的优势比的平均模拟估计值为:logit(yi)=1+log(2)x1i+log(2.5)x2i+log(3)x3i+0x4ilogit(yi)=1+log⁡(2)x1i+log⁡(2.5)x2i+log⁡(3)x3i+0x4i \mathrm{logit}(y_{i})=1 + \log(2)x_{1i} + \log(2.5)x_{2i} + \log(3)x_{3i} + 0x_{4i} x1x1x_{1}x1x1x_{1}x2x2x_{2}x1x1x_{1} res_1 res_2 res_3 res_4 1.679768 1.776200 2.002157 2.004077 显然,只有研究人员3和4获得了大约的正确比值比,而研究人员1和2没有。这在线性回归中不会发生,可以通过类似的模拟轻松显示(此处未显示)。我必须承认,尽管这个问题似乎是众所周知的,但这个结果对我来说却是令人惊讶的。Hernán等。(2011)将此称为“数学上的奇异性”,而不是偏见。222[2][2]^{[2]}[3][3]^{[3]} 我的问题: 如果各研究和模型之间的优势比基本上不可比,那么我们如何结合不同研究的结果以得出二元结果呢? 有什么可以对无数的元分析的结果可以说并从不同的研究结合起来,优势比,每个研究可能调整不同协变量集?他们本质上是无用的吗? 参考文献 [1]:Norton EC,Dowd BE,Maciejewski ML(2018年):赔率-当前最佳实践和使用。JAMA 320(1):84-85。 [2]:Norton EC,Dowd BE(2017年):对数赔率和Logit模型的解释。卫生服务水库。53(2):859-878。 [3]:HernánMA,Clayton D,Keiding N(2011):揭开了辛普森悖论的面纱。Int J Epidemiol 40:780-785。 揭露 问题(包括R代码)是用户timdisher在数据方法上提出的问题的修改版本。 R代码 set.seed(142857) n_sims <- 1000 # number …

3
如何编写Bertrand盒悖论的蒙特卡罗模拟?
在Mensa International Facebook页面上发布了以下问题: \quad\quad\quad\quad\quad\quad\quad\quad 该帖子本身收到了1000多个评论,但由于我知道这是Bertrand的“盒子悖论”,而答案是,因此我不会在此处详细讨论辩论。让我感兴趣的是,如何使用蒙特卡洛方法回答这一问题?该算法如何解决这个问题?2323\frac23 这是我的尝试: 生成到之间的均匀分布的随机数。0 1NNN000111 让事件框包含选择的2个金球(方框1)小于一半。 计数数字,小于,并调用结果作为。秒0.50.50.5SSS 由于确定如果选择了框1,就肯定会得到金球,如果选择了框2,则只有50%的机会会得到金球,因此,得到序列GG的概率为 P(B2=G|B1=G)=SS+0.5(N−S)P(B2=G|B1=G)=SS+0.5(N−S)P(B2=G|B1=G)=\frac{S}{S+0.5(N-S)} 在R中实现上述算法: N <- 10000 S <- sum(runif(N)<0.5) S/(S+0.5*(N-S)) 上面程序的输出大约是,几乎与正确答案匹配,但是我不确定这是正确的方法。是否有适当的方法以编程方式解决此问题?0.670.670.67

1
广义加性模型(GAM),交互作用和协变量
我一直在探索许多用于预测的工具,并且发现广义可加模型(GAM)具有最大的潜力。GAM非常棒!它们允许非常简洁地指定复杂的模型。但是,同样的简洁性使我有些困惑,特别是在GAM如何理解交互作用项和协变量方面。 考虑一个示例数据集(发布后的代码可重现),其中y是一个由几个高斯扰动的单调函数,外加一些噪声: 数据集具有一些预测变量: x:数据索引(1-100)。 w:辅助功能标记出y存在高斯的部分。w的值为1-20,其中x介于11到30之间,以及51到70之间。否则w为0。 w2:w + 1,因此没有0值。 R的mgcv软件包可轻松为这些数据指定许多可能的模型: 模型1和2非常直观。默认情况下,y仅根据索引值进行x平滑度预测会产生一些模糊正确的提示,但过于平滑。y仅根据w结果预测存在于的“平均高斯”模型中y,而没有其他w值的“感知”模型,所有其他数据点的值均为0。 模型3同时使用x和w作为1D平滑,产生了很好的拟合。模型4使用x并w在2D平滑中使用,也非常适合。这两个模型非常相似,尽管不完全相同。 模型5 x通过“ 模型” w。模型6则相反。mgcv的文档指出,“ by参数可确保平滑函数乘以[by参数中给定的协变量]”。那么5和6型不应该等效吗? 模型7和8使用预测变量之一作为线性项。这些对我来说很直观,因为它们只是在使用GLM对这些预测变量进行处理,然后将影响添加到模型的其余部分。 最后,模型9与模型5相同,除了模型x“通过” w2(为w + 1)进行了平滑处理。对我而言,奇怪的是,w2“ by”交互中缺少零会产生明显不同的效果。 所以,我的问题是: 3型和4型的规格之间有何区别?还有其他例子可以更清楚地说明差异吗? 确切地说,“通过”在这里做什么?我在伍德的书中读到的大部分内容以及该网站的内容都表明“ by”会产生乘法效应,但是我很难理解它的直觉。 为什么模型5和9之间会有如此显着的差异? 接下来是Reprex,用R编写。 library(magrittr) library(tidyverse) library(mgcv) set.seed(1222) data.ex <- tibble( x = 1:100, w = c(rep(0, 10), 1:20, rep(0, 20), 1:20, rep(0, 30)), w2 = …
12 r  modeling  gam  mgcv 

2
QQ情节看起来正常,但Shapiro-Wilk测试却相反
在R中,我有348个度量的样本,并且想知道是否可以假定它正态分布以用于将来的测试。 本质上是在遵循另一个Stack答案之后,我正在使用以下命令查看密度图和QQ图: plot(density(Clinical$cancer_age)) qqnorm(Clinical$cancer_age);qqline(Clinical$cancer_age, col = 2) 我没有统计方面的丰富经验,但是它们看起来像我所见过的正态分布示例。 然后,我正在运行Shapiro-Wilk测试: shapiro.test(Clinical$cancer_age) > Shapiro-Wilk normality test data: Clinical$cancer_age W = 0.98775, p-value = 0.004952 如果我正确地解释它,它告诉我可以否定原假设,即分布是正态的。 但是,我遇到了两个Stack帖子(here和here),这些帖子严重破坏了此测试的用处。看起来如果样本很大(348是否被认为是大样本?),它将总是说分布不正常。 我应该如何解释所有这些?我应该坚持使用QQ图并假设我的分布是正常的吗?

1
用R计算的多元正交多项式是什么?
单变量点集中的正交多项式是在点上产生值的多项式,其点积和成对相关性为零。R可以产生具有函数poly的正交多项式。 相同的函数具有变式多项式,该变式在多变量点集上生成正交多项式。无论如何,所得的多项式在成对零相关的意义上是不正交的。实际上,由于一阶多项式应该只是原始变量,因此除非原始变量不相关,否则一阶多项式就不会是正交的。 然后,我的问题是: R中由polym计算的多元正交多项式是什么?它们只是单变量正交多项式的乘积吗?它们是用来干什么的? 可以存在真正的多元正交多项式吗?有没有简单的生产方法?在R中?它们实际用于回归吗? 更新资料 在回应Superpronker的评论时,我举一个例子说明不相关多项式的含义: > x<-rnorm(10000) > cor(cbind(poly(x,degree=3))) 1 2 3 1 1.000000e+00 -6.809725e-17 2.253577e-18 2 -6.809725e-17 1.000000e+00 -2.765115e-17 3 2.253577e-18 -2.765115e-17 1.000000e+00 多边形函数返回以点x评估的正交多项式(此处每个多项式为10,000点)。不同多项式上的值之间的相关性为零(存在一些数字误差)。 使用多元多项式时,相关性不为零: > x<-rnorm(1000) > y<-rnorm(1000) > cor(cbind(polym(x,y,degree=2))) 1.0 2.0 0.1 1.1 0.2 1.0 1.000000e+00 2.351107e-17 2.803716e-02 -0.02838553 3.802363e-02 2.0 2.351107e-17 1.000000e+00 -1.899282e-02 0.10336693 …

1
非线性混合模型(NLME)的预测置信区间
我想获得非线性混合nlme模型预测的95%置信区间。由于没有提供任何标准来执行此操作nlme,因此我想知道使用“人口预测间隔”方法是否正确(如Ben Bolker的书章所述,该模型基于最大似然的模型)根据拟合模型的方差-协方差矩阵对固定效应参数进行重采样,基于此模拟进行预测,然后取这些预测的95%百分数得到95%的置信区间? 执行此操作的代码如下:(我在这里使用nlme帮助文件中的“ Loblolly”数据) library(effects) library(nlme) library(MASS) fm1 <- nlme(height ~ SSasymp(age, Asym, R0, lrc), data = Loblolly, fixed = Asym + R0 + lrc ~ 1, random = Asym ~ 1, start = c(Asym = 103, R0 = -8.5, lrc = -3.3)) xvals=seq(min(Loblolly$age),max(Loblolly$age),length.out=100) nresamp=1000 pars.picked = mvrnorm(nresamp, mu = …

2
使用lm进行2样本比例测试
我一直在使用线性模型执行2样本比例测试,但是已经意识到这可能并不完全正确。看来,使用具有二项式族+身份链接的广义线性模型可以准确给出未汇集的2样本比例测试结果。但是,使用线性模型(或带有高斯族的glm)得出的结果略有不同。我认为这可能是由于R如何解决二项式和高斯族的glm,但是还有其他原因吗? ## prop.test gives pooled 2-sample proportion result ## glm w/ binomial family gives unpooled 2-sample proportion result ## lm and glm w/ gaussian family give unknown result library(dplyr) library(broom) set.seed(12345) ## set up dataframe ------------------------- n_A <- 5000 n_B <- 5000 outcome <- rbinom( n = n_A + n_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.