Questions tagged «r»

R是一种免费的开源编程语言和软件环境,用于统计计算,生物信息学,可视化和通用计算。请提供最少且可复制的示例以及所需的输出。使用`dput()`作为数据,并通过`library()`调用指定所有非基本包。不要为数据或代码嵌入图片,而应使用缩进的代码块。对于统计相关的问题,请使用https://stats.stackexchange.com。

2
将颜色和形状的图例合并为一个图例
我正在使用2 x 2研究设计在ggplot中创建图,并希望使用2种颜色和2个符号对我的4种不同治疗组合进行分类。目前,我有2个图例,一个用于颜色,一个用于两种形状。我如何将它们组合成一个图例,所以我有一个蓝色圆圈,一个红色圆圈,一个蓝色三角形和一个读取三角形? 一些数据: state1 <- c(rep(c(rep("N", 7), rep("Y", 7)), 2)) year <- rep(c(2003:2009), 4) group1 <- c(rep("C", 14), rep("E", 14)) group2 <- paste(state1, group1, sep = "") beta <- c(0.16,0.15,0.08,0.08,0.18,0.48,0.14,0.19,0.00,0.00,0.04,0.08,0.27,0.03,0.11,0.12,0.09,0.09,0.10,0.19,0.16,0.00,0.11,0.07,0.08,0.09,0.19,0.10) lcl <- c(0.13,0.12,0.05,0.05,0.12,0.35,0.06,0.13,0.00,0.00,0.01,0.04,0.20,0.00,0.09,0.09,0.06,0.06,0.07,0.15,0.11,0.00,0.07,0.03,0.05,0.06,0.15,0.06) ucl <- c(0.20,0.20,0.13,0.14,0.27,0.61,0.28,0.27,0.00,1.00,0.16,0.16,0.36,0.82,0.14,0.15,0.13,0.13,0.15,0.23,0.21,0.00,0.15,0.14,0.12,0.12,0.23,0.16) data <- data.frame(state1,year,group1,group2,beta,lcl,ucl) 情节: library(ggplot2) pd <- position_dodge(.65) ggplot(data = data, aes(x = …
75 r  ggplot2 

10
如何通过对数据框中的列进行排序来快速形成组(四分位数,十进制等)
我看到很多的问题和答案再order和sort。有什么东西可以将向量或数据帧分类为分组(如四分位数或十分位数)?我有一个“手动”解决方案,但可能有一个经过小组测试的更好的解决方案。 这是我的尝试: temp <- data.frame(name=letters[1:12], value=rnorm(12), quartile=rep(NA, 12)) temp # name value quartile # 1 a 2.55118169 NA # 2 b 0.79755259 NA # 3 c 0.16918905 NA # 4 d 1.73359245 NA # 5 e 0.41027113 NA # 6 f 0.73012966 NA # 7 g -1.35901658 NA # 8 …
75 r  sorting  dataframe 

3
R闪亮传递对selectInput选择的反应
在服务器端的一个闪亮的应用程序中(通过RStudio),我有一个反应式,可以通过解析a的内容来返回变量列表textInput。然后在selectInput和/或中使用变量列表updateSelectInput。 我不能使它工作。有什么建议? 我做了两次尝试。第一种方法是outVar直接使用反应堆selectInput。第二种方法是使用反应性outVar在updateSelectInput。都不行。 服务器 shinyServer( function(input, output, session) { outVar <- reactive({ vars <- all.vars(parse(text=input$inBody)) vars <- as.list(vars) return(vars) }) output$inBody <- renderUI({ textInput(inputId = "inBody", label = h4("Enter a function:"), value = "a+b+c") }) output$inVar <- renderUI({ ## works but the choices are non-reactive selectInput(inputId = "inVar", label = …

10
如何按组获取摘要统计信息
我试图一次按类别列将R / S-PLUS中的多个摘要统计信息分组。我找到了几个函数,但是每个函数每个调用都做一个统计,比如`aggregate()。 data <- c(62, 60, 63, 59, 63, 67, 71, 64, 65, 66, 68, 66, 71, 67, 68, 68, 56, 62, 60, 61, 63, 64, 63, 59) grp <- factor(rep(LETTERS[1:4], c(4,6,6,8))) df <- data.frame(group=grp, dt=data) mg <- aggregate(df$dt, by=df$group, FUN=mean) mg <- aggregate(df$dt, by=df$group, FUN=sum) 我正在寻找的是在一次调用中获取同一组的多个统计信息,例如均值,最小值,最大值,标准,...等,这可行吗?
75 r  s 

3
如何在R中使用缺少值的随机森林?
library(randomForest) rf.model <- randomForest(WIN ~ ., data = learn) 我想拟合一个随机森林模型,但出现此错误: Error in na.fail.default(list(WIN = c(2L, 1L, 1L, 2L, 1L, 2L, 2L, 1L, : missing values in object 我有16个数字属性的数据框学习,而WIN是0级1的因子。
74 r  random-forest 

2
R中的“修改时复制”语义到底是什么?规范来源在哪里?
偶尔我会遇到R具有修改时复制语义的概念,例如在Hadley的devtools Wiki中。 大多数R对象具有“修改时复制”语义,因此修改函数参数不会更改原始值 我可以将此术语追溯到R-Help邮件列表。例如,Peter Dalgaard在2003年7月写道: R是一种函数式语言,具有惰性评估和弱动态类型(变量可以随意更改类型:a <-1;允许a <-“ a”)。从语义上讲,尽管在实现过程中使用了一些优化技巧来避免最差的效率,但是一切都是按修改进行复制的。 同样,Peter Dalgaard在2004年1月写道: R具有修改时复制的语义(原则上有时在实践中),因此一旦对象的一部分发生更改,您可能必须在新的位置查找包含它的任何内容,包括对象本身。 再往前走,Ross Ihaka在2000年2月说: 我们投入了大量工作来实现这一目标。我将语义描述为“修改时复制(如有必要)”。仅在修改对象后才进行复制。(如有必要)部分意味着,如果我们可以证明修改不能更改任何非局部变量,那么我们就可以继续进行修改而无需复制。 它不在手册中 不管我多么努力,我都无法在R手册(R语言定义或R Internals)中找到“修改时复制”的参考。 题 我的问题分为两部分: 正式记录在哪里? 修改时复制如何工作? 例如,既然将诺言传递给函数,那么谈论“通过引用传递”是否合适?

2
为复杂的图构建手动图例
我无法弄清楚如何为此图手动设置图例。我真正想要的只是一个简单的图例,该图例使用三种颜色并在每种颜色旁边都有一个名称。 当前代码如下: a <-c("S1","S2","S3","S4","S5","S6","S7","S8","S9") #names b <-c(0.23,0.26,0.55,0.56,0.36,0.23,0.18,0.06,0.04) #mean t0 c <-c(0.64,0.6,0.81,1.4,0.89,0.55,0.48,0.22,0.09) #mean t1 d <-c(0.20,0.23,0.52,0.53,0.33,0.20,0.15,0.04,0.03) #SD low t0 e <-c(0.26,0.29,0.58,.59,0.39,0.26,0.21,0.08,0.05) #SD high t0 f <-c(0.67,0.63,0.86,1.44,0.93,0.59,0.51,0.25,0.10) #SD high t1 g <-c(0.61,0.57,0.78,1.36,0.85,0.53,0.45,0.19,0.08) #SD low t1 h <-c(0.41,0.34,0.26,0.84,0.53,0.32,0.30,0.16,0.05) #absolute change data <- data.frame(a,b,c,d,e,f,g,h) ggplot(data=data,aes(a)) + geom_bar(stat="identity", aes(y=h),fill="#62c76b",colour="#333333")+ #green geom_line(aes(y=b,group=1),size=1.0,colour="#f04546") + #red geom_point(aes(y=b),size=3, colour="#f04546") …

3
优雅的索引,直到向量/矩阵的结尾
在R中是否可以说-我想要从位置i到向量/矩阵结尾的所有索引?假设我要从第3列开始添加子矩阵。我目前只知道这种方式: A = matrix(rep(1:8, each = 5), nrow = 5) # just generate some example matrix... A[,3:ncol(A)] # get submatrix from 3rd column onwards 但是我真的需要写ncol(A)吗?从“第三栏起”说出来没有优雅的方法吗?像A[,3:]什么?(或A[,3:...])?
74 r  matrix  dataframe  indexing 

3
R-我需要使用print()添加明确的换行符吗?
如何在R中使用换行符? myStringVariable <- "Very Nice ! I like"; myStringVariabel <- paste(myStringVariable, "\n", sep=""); 上面的代码 不起作用 附注:在谷歌搜索这类东西时,存在很大的挑战,因为查询“ R新行字符”似乎确实使Google感到困惑。我真的希望R有个不同的名字。
74 r  printing  newline 

12
错误:ggplot2和data.table的包或名称空间加载失败
我无法打开安装ggp​​lot2和data.table软件包。它给我以下错误(ggplot2的示例) > library(ggplot2) Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : there is no package called ‘Rcpp’ Error: package or namespace load failed for ‘ggplot2’ 在关闭R会话之前,我能够使用这两个软件包正常工作。现在,每次我尝试运行它时,都会向我显示此错误。 我也曾尝试删除并重新安装它,但没有成功。 remove.packages(c("ggplot2", "data.table")) install.packages('ggplot2', dep = TRUE) install.packages('data.table', dep = TRUE) 我不知道怎么了
74 r  ggplot2  data.table 

8
适用于python的auto.arima()
我正在尝试使用ARMA ARIMA模型预测每周销售量。我找不到用于调整中的order(p,d,q)的函数statsmodels。目前R具有功能forecast::auto.arima()可调整(p,d,q)参数的功能。 如何为模型选择正确的顺序?python中有为此目的提供的任何库吗?

2
R中的数据框和列表有什么区别?
dataframe和list in有什么区别R?什么时候应该使用哪一个?哪个更容易循环? 确切的问题:我必须先存储3个字符串元素,例如“ a”,“ b”,“ c”。稍后,对于每个这些,我需要再添加3个元素;例如对于“ a”,我必须添加“ a1”,“ a2”,“ a3”。稍后,我必须使用嵌套的for循环来访问这些元素。 所以我很困惑使用数据框或列表或其他某种数据类型,我可以先在其中存储然后追加(每列的类型)? 目前,我遇到错误,例如“要替换的项目数不是替换长度的倍数”
74 r  list  dataframe 

1
使用ggplot()更改线条颜色
我使用的不是ggplot2,但是今天我想在某些图形上使用它。但我不知道如何手动控制颜色geom_line() 我确定我忽略了一些简单的事情,但这是我的测试代码: x <- c(1:20, 1:20) variable <- c(rep("y1", 20), rep("y2", 20) ) value <- c(rnorm(20), rnorm(20,.5) ) df <- data.frame(x, variable, value ) d <- ggplot(df, aes(x=x, y=value, group=variable, colour=variable ) ) + geom_line(size=2) d 这给了我预期的输出: 我以为我所要做的只是简单的事情: d + scale_fill_manual(values=c("#CC6666", "#9999CC")) 但这并没有改变。我想念什么?
74 r  ggplot2 

4
如何在ggplot2中移动或定位图例
我正在尝试创建一个ggplot2绘图,该绘图下有图例。 ggplot2书在第112页上说:“图例的位置和对齐方式由主题设置legend.position控制,其值可以是右,左,上,下,无(无图例)或数字位置”。 以下代码有效(因为默认为“ right”),并且也将“ none”作为图例位置,但是“ left”,“ top”,“ bottom”都将失败,并显示“ grid.Call错误”。 .graphics(“ L_setviewport”,pvp,TRUE):视口的位置和/或大小不受限制” library(ggplot2) (myDat <- data.frame(cbind(VarX=10:1, VarY=runif(10)), Descrip=sample(LETTERS[1:3], 10, replace=TRUE))) qplot(VarX,VarY, data=myDat, shape=Descrip) + opts(legend.position="right") 我究竟做错了什么?重新定位图例必须非常常见,所以我想是我。


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.