Questions tagged «r»

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

2
如何在R中为逻辑回归模型绘制决策边界?
我在R中使用glm建立了逻辑回归模型。我有两个自变量。如何在两个变量的散点图中绘制模型的决策边界。例如,如何绘制像这样的图:http : //onlinecourses.science.psu.edu/stat557/node/55 谢谢。
16 r  logistic 

3
`predict.randomForest`如何估计类概率?
randomForest使用时,包装如何估计班级概率predict(model, data, type = "prob")? 我当时使用参数来预测概率ranger来训练随机森林probability = T。ranger在文档中说: 与Malley等人一样,种植概率森林。(2012)。 我模拟了一些数据并尝试了两个软件包,并获得了截然不同的结果(请参见下面的代码) 因此,我知道它使用另一种技术(然后是游侠)来估计概率。但是哪一个呢? simulate_data <- function(n){ X <- data.frame(matrix(runif(n*10), ncol = 10)) Y <- data.frame(Y = rbinom(n, size = 1, prob = apply(X, 1, sum) %>% pnorm(mean = 5) ) %>% as.factor() ) dplyr::bind_cols(X, Y) } treino <- simulate_data(10000) teste <- simulate_data(10000) …

1
lmer模型使用哪种多重比较方法:lsmeans或glht?
我正在使用具有一个固定效果(条件)和两个随机效果(由于主题设计和配对而导致的参与者)的混合效果模型分析数据集。该模型是使用lme4包生成的exp.model<-lmer(outcome~condition+(1|participant)+(1|pair),data=exp)。 接下来,我针对没有固定效果(条件)的模型对该模型进行了似然比检验,结果有显着差异。我的数据集中有3个条件,因此我想进行多重比较,但不确定使用哪种方法。我在CrossValidated和其他论坛上发现了许多类似的问题,但我仍然很困惑。 据我所见,人们建议使用 1.该lsmeans包- lsmeans(exp.model,pairwise~condition)这给了我下面的输出: condition lsmean SE df lower.CL upper.CL Condition1 0.6538060 0.03272705 47.98 0.5880030 0.7196089 Condition2 0.7027413 0.03272705 47.98 0.6369384 0.7685443 Condition3 0.7580522 0.03272705 47.98 0.6922493 0.8238552 Confidence level used: 0.95 $contrasts contrast estimate SE df t.ratio p.value Condition1 - Condition2 -0.04893538 0.03813262 62.07 -1.283 0.4099 Condition1 - …

3
使用glm()代替简单的卡方检验
我有兴趣更改glm()R中使用的原假设。 例如: x = rbinom(100, 1, .7) summary(glm(x ~ 1, family = "binomial")) 检验的假设p = 0.5p=0.5p = 0.5。如果我想将null更改为ppp =某个任意值,该glm()怎么办? 我知道也可以使用prop.test()和来完成此操作chisq.test(),但是我想探讨一下使用glm()来测试与分类数据有关的所有假设的想法。

1
如何拟合响应变量在0到1之间的混合模型?
我正在尝试使用lme4::glmer()二项式广义混合模型(GLMM)来拟合因变量,该因变量不是二进制的,而是介于零和一之间的连续变量。可以将这个变量视为一种可能性;实际上,这是人类受试者报告的概率(在我帮助分析的实验中)。也就是说,它不是 “离散”分数,而是连续变量。 我的glmer()电话无法正常工作(请参阅下文)。为什么?我能做什么? 稍后编辑:我的以下回答比该问题的原始版本更笼统,因此我也将该问题修改为更笼统。 更多细节 显然,不仅可以对二进制DV使用逻辑回归,而且还可以对零和一之间的连续DV使用逻辑回归。的确,当我跑步时 glm(reportedProbability ~ a + b + c, myData, family="binomial") 我收到警告消息 Warning message: In eval(expr, envir, enclos) : non-integer #successes in a binomial glm! 但是非常合理的拟合(所有因素都是分类的,因此我可以轻松地检查模型预测是否接近跨学科平均水平,并且接近)。 但是,我实际要使用的是 glmer(reportedProbability ~ a + b + c + (1 | subject), myData, family="binomial") 它给了我同样的警告,返回了一个模型,但是这个模型显然有很大的缺陷。固定效应的估计值与固定效应的估计值相距甚远glm()。(而且我需要包含glmerControl(optimizer="bobyqa")在glmer通话中,否则它根本不会收敛。)

1
写出多层混合效应模型的数学方程
简历问题 我正在尝试给出混合效果模型的详细且简洁的数学表示。我lme4在R中使用该软件包。我的模型的正确数学表示是什么? 数据,科学问题和R代码 我的数据集由不同地区的物种组成。我正在测试某个物种的流行率是否在导致灭绝(灭绝不一定是永久性的;它可以重新定殖)或定居之后的时间内发生变化。 lmer(prevalence ~ time + time:type + (1 + time + type:time | reg) + (1 + time + type:time | reg:spp)) 患病率是某个区域年份中某物种所占地层的比例 时间是一个连续变量,表示灭绝或定植的时间;它总是积极的 类型是具有两个级别的类别变量。这两个级别是“-”和“ +”。当type为-时,它是一个殖民化(默认级别)。当type为+时,表示灭绝。 Reg是具有9个级别的类别变量,表示区域 spp是分类变量;级别数因地区而异,在48级和144级之间变化。 换句话说:响应变量是患病率(占地层的比例)。固定效果包括1)和拦截,2)事件发生的时间以及3)事件发生的时间与事件类型(殖民化或灭绝)之间的相互作用。这3种固定效应中的每一种在区域之间随机变化。在一个区域内,每种效应在物种之间随机变化。 我试图弄清楚如何为模型编写数学方程式。我想我理解R代码中发生的事情(尽管,我确信我有一些知识空白,希望写出正式的数学表达式可以增进我的理解)。 我已经通过网络和这些论坛进行了很多搜索。可以肯定的是,我发现了大量有用的信息(也许我会在对此问题的编辑中链接到其中一些信息)。但是,我无法完全找到将R代码的“ Rosetta Stone”转换为数学公式(我对代码更满意)是否真的可以帮助我确认我正确理解了这些方程式。实际上,我知道已经存在一些差距,但是我们会解决的。 我的尝试 混合效应模型的基本形式,在矩阵表示法中为(我的理解):Y=Xβ+Zγ+ϵY=Xβ+Zγ+ϵ Y = X \beta + Z \gamma + \epsilon γX=⎡⎣⎢⎢1⋮1Δt⋮ΔtnΔt+⋮Δt+,n⎤⎦⎥⎥X=[1ΔtΔt+⋮⋮⋮1ΔtnΔt+,n] X = …

4
梯度提升机的精度随着迭代次数的增加而降低
我正在通过caretR中的程序包尝试使用梯度增强机算法。 使用一个小的大学录取数据集,我运行了以下代码: library(caret) ### Load admissions dataset. ### mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv") ### Create yes/no levels for admission. ### mydata$admit_factor[mydata$admit==0] <- "no" mydata$admit_factor[mydata$admit==1] <- "yes" ### Gradient boosting machine algorithm. ### set.seed(123) fitControl <- trainControl(method = 'cv', number = 5, summaryFunction=defaultSummary) grid <- expand.grid(n.trees = seq(5000,1000000,5000), interaction.depth = 2, shrinkage = …
15 machine-learning  caret  boosting  gbm  hypothesis-testing  t-test  panel-data  psychometrics  intraclass-correlation  generalized-linear-model  categorical-data  binomial  model  intercept  causality  cross-correlation  distributions  ranks  p-value  z-test  sign-test  time-series  references  terminology  cross-correlation  definition  probability  distributions  beta-distribution  inverse-gamma  missing-data  paired-comparisons  paired-data  clustered-standard-errors  cluster-sample  time-series  arima  logistic  binary-data  odds-ratio  medicine  hypothesis-testing  wilcoxon-mann-whitney  unsupervised-learning  hierarchical-clustering  neural-networks  train  clustering  k-means  regression  ordinal-data  change-scores  machine-learning  experiment-design  roc  precision-recall  auc  stata  multilevel-analysis  regression  fitting  nonlinear  jmp  r  data-visualization  gam  gamm4  r  lme4-nlme  many-categories  regression  causality  instrumental-variables  endogeneity  controlling-for-a-variable 

2
BSTS模型(在R中)的预测完全失败
在阅读了有关贝叶斯结构时间序列模型的博客文章之后,我想看看在以前使用ARIMA的问题的背景下实现这一点。 我有一些已知的(但嘈杂的)季节性因素的数据-肯定有年度,每月和每周的因素,还有由于特殊日子(例如联邦或宗教假期)而产生的影响。 我使用了该bsts包来实现此目的,据我所知,我并没有做错任何事情,尽管组件和预测看起来并不像我期望的那样。我不清楚我的实现是否错误,不完整或存在其他问题。 全时系列如下所示: 我可以在数据的某些子集上训练模型,并且模型通常在拟合方面看起来不错(图如下)。我用来执行此操作的代码在这里: library(bsts) predict_length = 90 training_cut_date <- '2015-05-01' test_cut_date <- as.Date(training_cut_date) + predict_length df = read.csv('input.tsv', sep ='\t') df$date <- as.Date(as.character(df$date),format="%Y-%m-%d") df_train = df[df$date < training_cut_date,] yts <- xts(log10(df_train$count), order.by=df_train$date) ss <- AddLocalLinearTrend(list(), yts) ss <- AddSeasonal(ss, yts, nseasons = 7) ss <- AddSeasonal(ss, yts, nseasons …
15 r  time-series  bayesian  mcmc  bsts 

1
了解QR分解
我有一个可行的示例(在R中),我试图进一步理解。我正在使用Limma创建线性模型,并试图逐步了解倍数变化计算中发生的情况。我主要是想弄清楚如何计算系数。据我所知,QR分解用于获取系数,因此我本质上是在寻找一种解释或逐步查看正在计算的方程式的方法,或者在其中寻找qr()的源代码。 R自己追踪。 使用以下数据: expression_data <- c(1.27135202935009, 1.41816160331787, 1.2572772420417, 1.70943398046296, 1.30290218641586, 0.632660015122616, 1.73084258791384, 0.863826352944684, 0.62481665344628, 0.356064235030147, 1.31542028558644, 0.30549909383238, 0.464963176430548, 0.132181421105667, -0.284799809563931, 0.216198538884642, -0.0841133304341238, -0.00184472290008803, -0.0924271878885008, -0.340291804468472, -0.236829711453303, 0.0529690806587626, 0.16321956624511, -0.310513510587778, -0.12970035111176, -0.126398635780533, 0.152550803185228, -0.458542514769473, 0.00243517688116406, -0.0190192219685527, 0.199329876859774, 0.0493831375210439, -0.30903829000185, -0.289604319193543, -0.110019942085281, -0.220289950537685, 0.0680403723818882, -0.210977291862137, 0.253649629045288, 0.0740109953273042, 0.115109148186167, 0.187043445057404, 0.705155251555554, 0.105479342752451, 0.344672919872447, …

1
Breiman的随机森林是否使用信息增益或Gini指数?
我想知道Breiman的随机森林(R randomForest包中的随机森林)是用作分割标准(属性选择标准)还是信息增益或基尼系数?我试图在http://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm以及R中randomForest包的文档中找到它。但是我发现的唯一发现是,可以将Gini索引用于可变重要性计算。

2
如何拟合混合模型以进行聚类
我有两个变量-X和Y,我需要使簇最大(最优)=5。让我们理想的变量图如下所示: 我想做5个这样的集群。像这样: 因此,我认为这是具有5个群集的混合模型。每个聚类都有中心点和围绕它的置信度。 这些簇并不总是这样,它们看起来如下所示,其中有时两个簇靠在一起,或者一个或两个簇完全缺失。 在这种情况下如何有效地拟合混合模型并进行分类(聚类)? 例: set.seed(1234) X <- c(rnorm(200, 10, 3), rnorm(200, 25,3), rnorm(200,35,3), rnorm(200,65, 3), rnorm(200,80,5)) Y <- c(rnorm(1000, 30, 2)) plot(X,Y, ylim = c(10, 60), pch = 19, col = "gray40")

2
在R中“手工”计算AIC
我试过在R中计算线性回归的AIC,但未使用AIC函数,如下所示: lm_mtcars <- lm(mpg ~ drat, mtcars) nrow(mtcars)*(log((sum(lm_mtcars$residuals^2)/nrow(mtcars))))+(length(lm_mtcars$coefficients)*2) [1] 97.98786 但是,AIC给出了不同的值: AIC(lm_mtcars) [1] 190.7999 有人可以告诉我我在做什么错吗?

1
在原假设下,可交换样本背后的直觉是什么?
排列检验(也称为随机检验,重新随机检验或精确检验)非常有用,并且在t-test未满足例如要求的正态分布的假设以及通过按等级对值进行转换时派上用场非参数测试之类的测试Mann-Whitney-U-test会导致丢失更多信息。但是,在使用这种检验时,一个假设且唯一一个假设应该是原假设下样本的可交换性假设。还值得注意的是,当有两个以上的示例(如在coinR包中实现的示例)时,也可以应用这种方法。 您能用简单的英语用一些比喻语言或概念直觉来说明这一假设吗?这对于在像我这样的非统计学家中阐明这个被忽视的问题非常有用。 注意: 提及在相同假设下应用置换测试不成立或无效的情况将非常有帮助。 更新: 假设我随机从我所在地区的当地诊所收集了50个受试者。他们被随机分配为接受药物或安慰剂的比例为1:1。分别Par1在V1(基准),V2(3个月后)和V3(1年后)时测量了参数1 。根据特征A,所有50个主题都可以分为2组;正值= 20,负值=30。它们也可以基于特征B细分为另外2组;B阳性= 15,B阴性=35。 现在,我具有Par1所有访问中所有受试者的值。在可交换性的假设下,如果可以,我是否可以在Par1使用置换测试的水平之间进行比较: -将接受药物治疗的受试者与接受V2安慰剂治疗的受试者进行比较? -将具有特征A的对象与具有V2的特征B的对象进行比较? -比较在V2具有特征A的对象与在V3具有特征A的对象? -在哪种情况下,这种比较是无效的,并且违反了可交换性的假设?
15 hypothesis-testing  permutation-test  exchangeability  r  statistical-significance  loess  data-visualization  normal-distribution  pdf  ggplot2  kernel-smoothing  probability  self-study  expected-value  normal-distribution  prior  correlation  time-series  regression  heteroscedasticity  estimation  estimators  fisher-information  data-visualization  repeated-measures  binary-data  panel-data  mathematical-statistics  coefficient-of-variation  normal-distribution  order-statistics  regression  machine-learning  one-class  probability  estimators  forecasting  prediction  validation  finance  measurement-error  variance  mean  spatial  monte-carlo  data-visualization  boxplot  sampling  uniform  chi-squared  goodness-of-fit  probability  mixture  theory  gaussian-mixture  regression  statistical-significance  p-value  bootstrap  regression  multicollinearity  correlation  r  poisson-distribution  survival  regression  categorical-data  ordinal-data  ordered-logit  regression  interaction  time-series  machine-learning  forecasting  cross-validation  binomial  multiple-comparisons  simulation  false-discovery-rate  r  clustering  frequency  wilcoxon-mann-whitney  wilcoxon-signed-rank  r  svm  t-test  missing-data  excel  r  numerical-integration  r  random-variable  lme4-nlme  mixed-model  weighted-regression  power-law  errors-in-variables  machine-learning  classification  entropy  information-theory  mutual-information 

1
解读LASSO变量迹线图
我是该glmnet软件包的新手,但仍不确定如何解释结果。谁能帮助我阅读以下跟踪图? 通过运行以下命令获得该图: library(glmnet) return <- matrix(ret.ff.zoo[which(index(ret.ff.zoo)==beta.df$date[2]), ]) data <- matrix(unlist(beta.df[which(beta.df$date==beta.df$date[2]), ][ ,-1]), ncol=num.factors) model <- cv.glmnet(data, return, standardize=TRUE) op <- par(mfrow=c(1, 2)) plot(model$glmnet.fit, "norm", label=TRUE) plot(model$glmnet.fit, "lambda", label=TRUE) par(op)


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.