Questions tagged «r»

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

6
在启动时将参数重置为默认值
通常,当我制作自己的绘图函数时,我会构造一个: op <- par("mypar"=myvalue) on.exit(par(op)) 这是将还原par为先前值的标准方法。假设您正在运行一些确实更改了某些参数的函数,并且需要在R中启动时将其重置为默认值。这样做的便捷方法是什么? 换句话说:如何达到默认值par()?
76 r  default  par 

2
seq_along工作但seq产生意外结果的例子有哪些?
有什么很好的例子说明什么时候seq_along会起作用,但seq会产生意想不到的结果? 从文档中?seq我们可以得到: 请注意,它与第一个参数的类一起分派,而与参数名称无关。如果只用一个参数调用它,这可能会产生意想不到的后果 along.with:seq_along在这种情况下,使用它会更好。
76 r  seq 

3
点在R –个人喜好,命名约定或更多内容中意味着什么?
我(可能)不是var1~.在这里指“所有其他变量” 。plyr再次指向我,调查mlply并想知道为什么用这样的前导点定义参数: function (.data, .fun = NULL, ..., .expand = TRUE, .progress = "none", .parallel = FALSE) { if (is.matrix(.data) & !is.list(.data)) .data <- .matrix_to_df(.data) f <- splat(.fun) alply(.data = .data, .margins = 1, .fun = f, ..., .expand = .expand, .progress = .progress, .parallel = .parallel) } <environment: namespace:plyr> …

4
如何对data.frame列值求和?
我有一个包含几列的数据框;一些数字和一些字符。如何计算特定列的总和?我GOOGLE了这一点,我看到无数的功能(sum,cumsum,rowsum,rowSums,colSums,aggregate,apply),但我不能让这一切的感觉。 例如,假设我有一个people包含以下各列的数据框 people <- read( text = "Name Height Weight Mary 65 110 John 70 200 Jane 64 115", header = TRUE ) … 如何获得所有权重的总和?

5
如何强制列表对象键入“ double”
编码: a <- structure(list(`X$Days` = c("10", "38", "66", "101", "129", "185", "283", "374")), .Names = "X$Days") 然后a就像 $`X$Days` [1] "10" "38" "66" "101" "129" "185" "283" "374" 我想强制a转换为数值数组,但是强制函数返回我 Error: (list) object cannot be coerced to type 'double' 谢谢,
76 r 

7
重复data.frame的行N次
我有以下数据框: data.frame(a = c(1,2,3),b = c(1,2,3)) a b 1 1 1 2 2 2 3 3 3 我想重复行n次。例如,这里的行重复了3次: a b 1 1 1 2 2 2 3 3 3 4 1 1 5 2 2 6 3 3 7 1 1 8 2 2 9 3 3 在R中有简单的功能可以做到这一点吗?谢谢!
76 r  dataframe 

6
我是否需要归一化(或缩放)randomForest(R包)的数据?
我正在执行回归任务-是否需要对randomForest(R包)的数据进行规范化(或缩放)?是否有必要同时缩放目标值?如果-我想从插入符号包中使用缩放功能,但是我没有找到如何取回数据(去缩放,反规范化)。您是否不知道其他一些功能(在任何软件包中)对规范化/非规范化很有帮助?谢谢,米兰
76 r  random-forest 

2
在我自己的包中使用data.table包
我正在尝试在自己的包中使用data.table包。MWE如下: 我创建了一个函数test.fun,该函数只是创建了一个小的data.table对象,然后将按“ A”列分组的“ Val”列求和。该代码是 test.fun<-function () { library(data.table) testdata<-data.table(A=rep(seq(1,5), 5), Val=rnorm(25)) setkey(testdata, A) res<-testdata[,{list(Ct=length(Val),Total=sum(Val),Avg=mean(Val))},"A"] return(res) } 当我在常规的R会话中创建此函数,然后运行该函数时,它会按预期工作。 > res<-test.fun() data.table 1.8.0 For help type: help("data.table") > res A Ct Total Avg [1,] 1 5 -0.5326444 -0.1065289 [2,] 2 5 -4.0832062 -0.8166412 [3,] 3 5 0.9458251 0.1891650 [4,] 4 5 2.0474791 …
76 r  data.table 

11
如何在R中绘制数据框的所有列
数据框有n列,我想得到n个图,每列一个图。 我是一个新手,我不太熟练使用R,反正我找到了两种解决方案。 第一个有效,但是它不打印列名(我需要它们!): data <- read.csv("sample.csv",header=T,sep=",") for ( c in data ) plot( c, type="l" ) 第二个效果更好,因为它打印列名: data <- read.csv("sample.csv",header=T,sep=",") for ( i in seq(1,length( data ),1) ) plot(data[,i],ylab=names(data[i]),type="l") 有什么更好的解决方案(从R语言的角度来看)?
76 r  plot  dataframe 

2
从data.table中删除多列
从data.table中删除多列的正确方法是什么?我当前正在使用下面的代码,但是当我不小心重复其中一个列名时,出现了意外的行为。我不确定这是否是错误,或者是否不应该以这种方式删除列。 library(data.table) DT <- data.table(x = letters, y = letters, z = letters) DT[ ,c("x","y") := NULL] names(DT) [1] "z" 上面的工作正常,但是 DT <- data.table(x = letters, y = letters, z = letters) DT[ ,c("x","x") := NULL] names(DT) [1] "z"
76 r  data.table 

2
R日期与lubridate
嗨,我正在尝试获取lubridate的日期序列 这不行 seq(ymd('2012-04-07'),ymd('2013-03-22'),by=week(1)) 基本命令 seq(as.Date('2012-04-7'),as.Date('2013-03-22'),'weeks') 确实可以,但是我想知道是否有使用lubridate的优雅方法。 编辑 请忽略:解决了我自己,所以只留给后代。很高兴在必要时将其删除。 seq(ymd('2012-04-07'),ymd('2013-03-22'),by='weeks') 绝招
76 r  lubridate 

7
在行尾绘制标签
我有以下数据(temp.dat有关完整数据,请参见结尾注释) Year State Capex 1 2003 VIC 5.356415 2 2004 VIC 5.765232 3 2005 VIC 5.247276 4 2006 VIC 5.579882 5 2007 VIC 5.142464 ... 我可以生成以下图表: ggplot(temp.dat) + geom_line(aes(x = Year, y = Capex, group = State, colour = State)) 我希望标签不是传说,而是 颜色与系列相同 每个系列的最后一个数据点的右侧 我在以下链接的答案中注意到baptiste的评论,但是当我尝试修改他的代码(geom_text(aes(label = State, colour = State, x …
76 r  ggplot2  legend 

4
熊猫版的rbind
在R中,您可以使用rbind将一个数据列粘贴到另一个数据列的底部,从而合并两个数据帧。在大熊猫中,您如何完成同一件事?看起来异常困难。 由于我不了解的原因,使用append会导致混乱,包括NaN和其他内容。我只是试图“ rbind”两个看起来像这样的相同框架: 编辑:我正在以一种愚蠢的方式创建DataFrames,这会导致问题。附加= rbind所有意图和目的。请参阅下面的答案。 0 1 2 3 4 5 6 7 0 ADN.L 20130220 437.4 442.37 436.5000 441.9000 2775364 2013-02-20 18:47:42 1 ADM.L 20130220 1279.0 1300.00 1272.0000 1285.0000 967730 2013-02-20 18:47:42 2 AGK.L 20130220 1717.0 1749.00 1709.0000 1739.0000 834534 2013-02-20 18:47:43 3 AMEC.L 20130220 1030.0 1040.00 1024.0000 1035.0000 …
76 python  r  dataframe  pandas 

6
使用所有向量元素的组合粘贴两个向量
我有两个向量: vars <- c("SR", "PL") vis <- c(1,2,3) 基于这些向量,我想创建以下向量: "SR.1" "SR.2" "SR.3" "PL.1" "PL.2" "PL.3" 与paste我有以下结果: paste(vars, vis, sep=".") [1] "SR.1" "PL.2" "SR.3" 如何创建所需的向量?
76 r  r-faq 

4
在“。”之后删除字符串的一部分
我正在使用NCBI参考序列登录号,例如variable a: a <- c("NM_020506.1","NM_020519.1","NM_001030297.2","NM_010281.2","NM_011419.3", "NM_053155.2") 要从biomart软件包中获取信息,我需要在登录号后删除.1,.2等等。我通常使用以下代码执行此操作: b <- sub("..*", "", a) # [1] "" "" "" "" "" "" 但是如您所见,这不是此变量的正确方法。谁能帮我这个?

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.