Tag: r faq

在数据框中随机行示例

我正在努力寻找合适的函数来返回指定数量的随机选取的行,而不是从R语言的数据框中进行replace? 谁能帮我吗?

清理因子水平(折叠多个层次/标签)

什么是最有效(即有效/适当)的方式来清理一个包含多个层次的因素需要被折叠? 也就是说,如何将两个或更多的因素水平合并为一个。 下面是一个例子,其中“是”和“是”两个级别应该折叠为“是”,“否”和“N”折叠为“否”: ## Given: x <- c("Y", "Y", "Yes", "N", "No", "H") # The 'H' should be treated as NA ## expectedOutput [1] Yes Yes Yes No No <NA> Levels: Yes No # <~~ NOTICE ONLY **TWO** LEVELS 一种select当然是用手和sub打交道。 另一种方法是允许重复标签,然后放下它们 ## Duplicate levels ==> "Warning: deprecated" xf <- factor(x, levels=c("Y", "Yes", "No", "N"), labels=c("Yes", […]

R – dplyr – mutate – 使用dynamicvariables名称

我想使用dplyr的 mutate()在数据框中创build多个新列。 列名和它们的内容应该是dynamic生成的。 来自虹膜的示例数据: require(dplyr) data(iris) iris <- tbl_df(iris) 我创build了一个函数来从Petal.Widthvariables中改变我的新列: multipetal <- function(df, n) { varname <- paste("petal", n , sep=".") df <- mutate(df, varname = Petal.Width * n) ## problem arises here df } 现在我创build一个循环来build立我的列: for(i in 2:5) { iris <- multipetal(df=iris, n=i) } 然而,由于mutate认为varname是一个文字variables名,循环只创build一个新variables(称为varname)而不是四个(称为petal.2 – petal.5)。 我怎样才能mutate()使用我的dynamic名称作为variables名?

在数据框中提取每个组内的最大值

我有一个数据框与分组variables(“基因”)和值variables(“价值”): Gene Value A 12 A 10 B 3 B 5 B 6 C 1 D 3 D 4 对于我的分组variables的每个级别,我希望提取最大值。 结果应该是一个数据框,每个级别的分组variables有一行: Gene Value A 12 B 6 C 1 D 4 aggregate做到这一点吗?

安装旧版本的R软件包

我正在尝试使用Rpy2和ggplot2,但我得到一个错误。 在网上search了一些错误之后,我发现发生错误是因为ggplot2软件包中还没有反映在Rpy2中的变化(例如,看到这个post (编辑:链接现在已经死了))。 所以我现在需要安装一个老版本的ggplot2。 这是我想要的伪代码: install.packages("ggplot2", version='0.9.1') 但是install.packages没有version参数 。 我该怎么做?

根据vector中的值从数据框中select行

我有类似这样的数据: dt <- structure(list(fct = structure(c(1L, 2L, 3L, 4L, 3L, 4L, 1L, 2L, 3L, 1L, 2L, 3L, 2L, 3L, 4L), .Label = c("a", "b", "c", "d"), class = "factor"), X = c(2L, 4L, 3L, 2L, 5L, 4L, 7L, 2L, 9L, 1L, 4L, 2L, 5L, 4L, 2L)), .Names = c("fct", "X"), class = "data.frame", row.names = […]

strptime,as.POSIXct和as.Date返回意外的NA

当我尝试使用以下格式parsing时间戳时:“Thu Nov 8 15:41:45 2012”,只返回NA 。 我使用Mac OS X R 2.15.2和Rstudio 0.97.237。 我的操作系统的语言是荷兰语:我想这与它有关。 当我尝试strptime , NA被返回: var <- "Thu Nov 8 15:41:45 2012" strptime(var, "%a %b %d %H:%M:%S %Y") # [1] NA as.POSIXct工作: as.POSIXct(var, "%a %b %d %H:%M:%S %Y") # [1] NA 我也尝试了上面的string作为date,但没有%H:%M:%S组件: as.Date("Thu Nov 8 2012", "%a %b %d %Y") # [1] NA 任何想法我可能做错了什么?

将密度曲线拟合到R中的直方图

R中是否有适合直方图曲线的函数? 假设您有以下直方图 hist(c(rep(65, times=5), rep(25, times=5), rep(35, times=10), rep(45, times=4))) 这看起来很正常,但是是偏斜的。 我想拟合一个正常的曲线,这个曲线是偏斜的,绕着这个直方图。 这个问题是相当基本的,但我似乎无法在互联网上findR的答案。

直接从R脚本读取Excel文件

我怎样才能直接读取一个Excel文件到R? 或者我应该首先将数据导出到文本或CSV文件并将该文件导入到R?

在R中的同一图中绘制两个图

我想在同一个阴谋中阴谋y1和y2。 x <- seq(-2, 2, 0.05) y1 <- pnorm(x) y2 <- pnorm(x,1,1) plot(x,y1,type="l",col="red") plot(x,y2,type="l",col="green") 但是当我这样做的时候,他们并不是一起被绘制在同一个地方。 在Matlab中,可以hold on ,但有谁知道如何在R中做到这一点?