Questions tagged «r»

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

1
ARIMA(1,1,0)系列的仿真
我已经将ARIMA模型拟合到原始时间序列,并且最佳模型是ARIMA(1,1,0)。现在,我想从该模型中模拟系列。我编写了简单的AR(1)模型,但是我不明白如何在ARI(1,1,0)模型中调整差异。以下用于AR(1)系列的R代码是: phi= -0.7048 z=rep(0,100) e=rnorm(n=100,0,0.345) cons=2.1 z[1]=4.1 for (i in 2:100) z[i]=cons+phi*z[i-1]+e[i] plot(ts(Y)) 我如何在上面的代码中包括差异项ARI(1,1)。在这方面,任何人都可以帮助我。
11 r  time-series  arima 

1
如何为R中的每个预测计算回归的置信度得分(使用随机森林/ XGBoost)?
使用随机森林或极端梯度增强(XGBoost)之类的算法时,是否可以获取每个预测值的置信度得分(也可以称为置信度值或似然度)?假设此置信度得分介于0到1之间,表示我对特定预测的信心如何。 根据我在互联网上发现的有关信心的信息,通常用间隔来衡量。这是一个使用库中confpred函数计算的置信区间的示例lava: library(lava) set.seed(123) n <- 200 x <- seq(0,6,length.out=n) delta <- 3 ss <- exp(-1+1.5*cos((x-delta))) ee <- rnorm(n,sd=ss) y <- (x-delta)+3*cos(x+4.5-delta)+ee d <- data.frame(y=y,x=x) newd <- data.frame(x=seq(0,6,length.out=50)) cc <- confpred(lm(y~poly(x,3),d),data=d,newdata=newd) if (interactive()) { ##' plot(y~x,pch=16,col=lava::Col("black"), ylim=c(-10,15),xlab="X",ylab="Y") with(cc, lava::confband(newd$x, lwr, upr, fit, lwd=3, polygon=T, col=Col("blue"), border=F)) } 代码输出仅给出置信区间: 还有一个库conformal,但我也将其用于回归的置信区间:“共形允许在共形预测框架中计算预测误差:(i)用于分类的p。值,以及(ii)回归的置信区间。 ” …

1
将二项式GLMM(glmer)拟合为比例或分数的响应变量
我希望有人可以帮助解决我认为相对简单的问题,我想我知道答案,但未经证实,这已经成为我无法确定的事情。 我有一些计数数据作为响应变量,我想测量该变量如何随某物的比例存在而变化。 更详细地,响应变量是在多个站点中昆虫物种的存在的计数,因此例如采样一个站点10次,并且该物种可能出现4次。 我想看看这是否与这些地点植物整体群落中一组植物物种的比例存在相关。 这意味着我的数据如下所示(这只是一个示例) Site, insectCount, NumberOfInsectSamples, ProportionalPlantGroupPresence 1, 5, 10, 0.5 2, 3, 10, 0.3 3, 7, 9, 0.6 4, 0, 9, 0.1 数据还包括位置的随机效应。 我想到了两种方法,一种是lmer将昆虫转换成一定比例的线性模型(),例如 lmer.model<-lmer(insectCount/NumberOfInsectSamples~ ProportionalPlantGroupPresence+(1|Location),data=Data) 第二个是二项式GLMM(glmer),例如 glmer.model <- glmer(cbind(insectCount,NumberOfInsectSamples-insectCount)~ ProportionalPlantGroupPresence+(1|Location), data=Data,family="binomial") 我相信二项式聚光镜是正确的方法,但是它们会产生完全不同的结果。我似乎无法在网络上找到明确的答案,而仍然没有一点不确定性,并希望确保自己没有犯错。 任何帮助或对替代方法的见解将不胜感激。



3
可以使用线性判别分析(LDA)中的标定值在线性判别式上绘制解释变量吗?
使用通过主成分分析获得的值的双图,可以探索构成每个主成分的解释变量。 使用线性判别分析是否也有可能? 提供的示例使用。数据为“埃德加·安德森的虹膜数据”(http://en.wikipedia.org/wiki/Iris_flower_data_set)。这是虹膜数据: id SLength SWidth PLength PWidth species 1 5.1 3.5 1.4 .2 setosa 2 4.9 3.0 1.4 .2 setosa 3 4.7 3.2 1.3 .2 setosa 4 4.6 3.1 1.5 .2 setosa 5 5.0 3.6 1.4 .2 setosa 6 5.4 3.9 1.7 .4 setosa 7 4.6 3.4 1.4 .3 …

2
如何对每日时间序列数据中的月度效果建模?
我有两个时间序列的每日数据。一个是订阅sign-ups,另一个terminations是订阅。我想使用两个变量中包含的信息来预测后者。 从这些系列的图表来看,很明显终止与前几个月的签约倍数相关。也就是说,5月10日的注册人数激增,将导致6月10日,7月10日和8月10日的终止人数增加,依此类推,尽管这种影响逐渐减弱。 我希望获得有关我可以采用哪种模型来建模此特定问题的提示。任何建议将不胜感激。 到目前为止,我一直在考虑一个VAR模型,但是我不确定如何包括月度影响-使用非常高的滞后量或以某种方式添加季节性成分?

3
在R中创建自相关随机值
我们正在尝试创建自动相关的随机值,将其用作时间序列。我们没有引用的现有数据,仅想从头开始创建向量。 一方面,我们当然需要具有分布及其SD的随机过程。 另一方面,必须描述影响随机过程的自相关。该向量的值与在几个时间间隔内强度的降低自相关。例如lag1有0.5,lag2 0.3,lag1 0.1等。 所以最后向量应该看起来像这样:2、4、7、11、10、8、5、4、2,-1、2、5、9、12、13、10、8、4、3, 1,-2,-5 等等。

1
R中的Fisher检验
假设我们有以下数据集: Men Women Dieting 10 30 Non-dieting 5 60 如果我在R中运行Fisher精确测试,那么alternative = greater(或更少)意味着什么?例如: mat = matrix(c(10,5,30,60), 2,2) fisher.test(mat, alternative="greater") 我得到的p-value = 0.01588和odds ratio = 3.943534。另外,当我像这样翻转列联表的行时: mat = matrix(c(5,10,60,30), 2, 2) fisher.test(mat, alternative="greater") 然后我得到p-value = 0.9967和odds ratio = 0.2535796。但是,当我在没有备用参数(即fisher.test(mat))的情况下运行两个列联表时,我得到了p-value = 0.02063。 你能告诉我原因吗? 此外,在上述情况下,原假设和替代假设是什么? 我可以在像这样的列联表上运行fisher测试: mat = matrix(c(5000,10000,69999,39999), 2, 2) PS:我不是统计学家。我正在尝试学习统计信息,以便您的帮助(用简单的英语回答)将受到高度赞赏。

3
如何计算两个斜率之差?
有没有一种方法可以了解两条线(或多或少)是否平行?我有两条线是从线性回归生成的,我想了解它们是否平行。换句话说,我想得到这两条线的斜率的不同。 是否有R函数来计算? 编辑: ...,以及如何获得线性回归线的斜率(以度为单位)?

1
使用时变协变量测试纵向混合模型中的同时和滞后效应
最近有人告诉我,如果不为这些协变量引入时滞,就不可能将时变协变量纳入纵向混合模型。您可以确认/否认吗?您对此情况有参考吗? 我提出一个简单的情况来澄清。假设我已经对40个受试者重复测量(说过30次)定量变量(y,x1,x2,x3)。通过问卷在每个受试者中对每个变量进行30次测量。在这里,最终数据将是嵌套在40个主题中的4 800个观察值(4个变量X 30场合X 40个主题)。 我想单独测试(不用于模型比较): 同时(同步)效果:时间t的x1,x2和x3对时间t的y的影响。 滞后效应:在时间t-1时x1,x2和x3对y的影响。 我希望一切都清楚(我不是说英语的人!)。 例如,在R lmer {lme4}中,具有滞后效应的公式为: lmer(y ~ lag1.x1 + lag1.x2 + lag1.x3 + (1|subject)) 其中y,在时间t处的因变量lag1.x1是,在各个级别上的滞后自变量x1,等等。 对于同时效果,公式为: lmer(y ~ x1 + x2 + x3 + (1|subject)) 一切运行良好,它给了我有趣的结果。但是,指定具有同步时变协变量的lmer模型是否正确,还是我错过了一些事情? 编辑: 此外,是否有可能同时测试同时和滞后效应?, 例如 : lmer(y ~ x1 + x2 + x3 + lag1.x1 + lag1.x2 + lag1.x3 …

4
按时间顺序解释什么?
到目前为止,到目前为止主要处理横截面数据,最近才进行浏览,扫描了大量的时间序列入门文献,我不知道解释变量在时间序列分析中将扮演什么角色。 我想解释一个趋势而不是趋势。作为引言,我所读的大部分内容都假定该系列文章源于某种随机过程。我了解了AR(p)和MA流程以及ARIMA建模。除了自动回归过程之外,我还想处理更多信息,所以我找到了VAR / VECM并运行了一些示例,但我仍然想知道是否存在某些案例与横截面上的解释更接近。 其背后的动机是我的系列分解表明趋势是主要的贡献者,而余数和季节性影响几乎没有作用。我想解释一下这种趋势。 我可以/应该将我的系列回归多个不同的系列吗?凭直觉,由于串行相关性,我会使用gls(我不太确定cor结构)。我听说过虚假回归,并且知道这是一个陷阱,但是我正在寻找一种解释趋势的方法。 这是完全错误还是不常见?还是我到目前为止错过了正确的章节?

1
使用R预测包中的TBATS解释时间序列分解
我想将以下时间序列数据分解为季节性,趋势和残差组分网。数据是来自商业建筑的每小时冷却能源概况: TotalCoolingForDecompose.ts <- ts(TotalCoolingForDecompose, start=c(2012,3,18), freq=8765.81) plot(TotalCoolingForDecompose.ts) 因此,基于以下建议,每天和每周都有明显的季节性影响:如何分解具有多个季节性成分的时间序列?,我使用tbats了forecast软件包中的函数: TotalCooling.tbats <- tbats(TotalCoolingForDecompose.ts, seasonal.periods=c(24,168), use.trend=TRUE, use.parallel=TRUE) plot(TotalCooling.tbats) 结果是: 此模型的level和slope组件描述什么?如何获得trend与remainder该软件包所引用的论文相似的,和组件(De Livera,Hyndman和Snyder(JASA,2011年))?

4
为什么对重新采样的数据集进行假设检验经常会拒绝零值?
tl; dr:从空值下生成的数据集开始,我对样本进行了替换并重新采样,并对每个重新采样的数据集进行了假设检验。这些假设检验在超过5%的时间内拒绝了原假设。 在下面的非常简单的模拟中,我使用生成数据集,并为每个数据集拟合一个简单的OLS模型。然后,对于每个数据集,我通过替换替换原始数据集的行来生成1000个新数据集(该算法在Davison&Hinkley的经典文章中专门描述为适合线性回归的算法)。对于每一个,我都使用相同的OLS模型。最终,引导样本中大约16%的假设检验拒绝了null,而我们应该得到5%(就像在原始数据集中所做的那样)。X〜ñ(0 ,1 )⨿ ÿ〜ñ(0 ,1 )X〜ñ(0,1个)⨿ÿ〜ñ(0,1个)X \sim N(0,1) \amalg Y \sim N(0,1) 我怀疑这与重复观察导致虚假关联有关,因此为了进行比较,我尝试了以下代码中的两种其他方法(注释掉)。在方法2中,我修复,然后用原始数据集上OLS模型中的重采样残差替换在方法3中,我绘制了一个随机子样本而不进行替换。这两种选择均起作用,即它们的假设检验拒绝了5%的无效时间。ÿXXXÿÿY 我的问题:罪魁祸首是反复观察吗?如果是这样,考虑到这是引导程序的标准方法,那么我们到底在哪里违反标准引导程序理论? 更新#1:更多模拟 我尝试了一个更简单的方案,即的仅拦截回归模型。发生相同的问题。ÿÿY # note: simulation takes 5-10 min on my laptop; can reduce boot.reps # and n.sims.run if wanted # set the number of cores: can change this to match your machine library(doParallel) registerDoParallel(cores=8) …

1
为什么对于人工多项式展开和使用R`poly`函数会得到不同的预测?
为什么对于人工多项式展开和使用R poly函数会得到不同的预测? set.seed(0) x <- rnorm(10) y <- runif(10) plot(x,y,ylim=c(-0.5,1.5)) grid() # xp is a grid variable for ploting xp <- seq(-3,3,by=0.01) x_exp <- data.frame(f1=x,f2=x^2) fit <- lm(y~.-1,data=x_exp) xp_exp <- data.frame(f1=xp,f2=xp^2) yp <- predict(fit,xp_exp) lines(xp,yp) # using poly function fit2 <- lm(y~ poly(x,degree=2) -1) yp <- predict(fit2,data.frame(x=xp)) lines(xp,yp,col=2) 我的尝试: 截距似乎是一个问题,当我将模型与截距拟合时,即-1在模型中不存在时formula,这两行是相同的。但是,为什么没有截距,这两行是不同的? …

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.