Tag: r

Linux中有哪些IDE可用于R?

Linux中R有什么好的IDE? 我已经尝试过Rcmdr和Eclipse,但是在Windows中似乎没有和Tinn-R相同的可用性。 还有其他的select吗?

删除R中数据文件的空行

我有一个空行数据集。 我想删除它们: myData<-myData[-which(apply(myData,1,function(x)all(is.na(x)))),] 它工作正常。 但现在我想在我的数据中添加一列,并初始化第一个值: myData$newCol[1] <- -999 Error in `$<-.data.frame`(`*tmp*`, "newCol", value = -999) : replacement has 1 rows, data has 0 不幸的是,它不工作,我不明白为什么,我不能解决这个问题。 当我一次删除一行时,它工作: TgData = TgData[2:nrow(TgData),] 或者类似的东西。 当我只使用第一行13.000行时,它也可以工作。 但它不适用于我的实际数据,有32000行。 我做错了什么? 这对我来说似乎没有意义。

dplyr总结:“.drop = FALSE”等同于保持输出中长度为零的组

当使用plyr的ddply函数进行summarise时,默认情况下会删除空的类别。 您可以通过添加.drop = FALSE来更改此行为。 但是,在使用dplyr进行summarise时,这不起作用。 是否有另一种方法来保持结果中的空白类别? 这是假数据的例子。 library(dplyr) df = data.frame(a=rep(1:3,4), b=rep(1:2,6)) # Now add an extra level to df$b that has no corresponding value in df$a df$b = factor(df$b, levels=1:3) # Summarise with plyr, keeping categories with a count of zero plyr::ddply(df, "b", summarise, count_a=length(a), .drop=FALSE) b count_a 1 1 6 2 2 6 […]

将data.frame列格式从字符转换为factor

我在R语言编程。 我想改变我的data.frame对象( mydf )从字符的一些列的格式(类)的因素 。 当我通过read.table()函数读取文本文件时,我不想这样做。 任何帮助,将不胜感激。

从R写入Excel时处理java.lang.OutOfMemoryError

xlsx软件包可用于从R读取和写入Excel电子表格。不幸的是,即使是中等大小的电子表格,也可能发生java.lang.OutOfMemoryError 。 尤其是, ## Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : ## java.lang.OutOfMemoryError: Java heap space ## Error in .jcall("RJavaTools", "Ljava/lang/Object;", "newInstance", .jfindClass(class), : ## java.lang.OutOfMemoryError: GC overhead limit exceeded (其他相关例外也是可能的,但更less见) 在阅读电子表格时,也遇到过类似的问题。 导入一个大的xlsx文件到R? 使用Excel电子表格作为CSV数据存储介质的主要优点是可以在同一个文件中存储多个工作表,因此在这里我们考虑一个数据框列表,每个工作表要写入一个数据框。 这个示例数据集包含40个dataframe,每个dataframe包含两列高达200k行的数据。 它被devise成足够大以至于有问题,但是可以通过改变n_sheets和n_rows来改变大小。 library(xlsx) set.seed(19790801) n_sheets <- 40 the_data <- replicate( n_sheets, { n_rows <- sample(2e5, 1) data.frame( x = runif(n_rows), y […]

R向量/dataframe中的基本滞后

很可能会暴露我是R的新手,但在SPSS中,运行时滞很容易。 显然这是用户错误,但我失踪了? x <- sample(c(1:9), 10, replace = T) y <- lag(x, 1) ds <- cbind(x, y) ds 结果是: xy [1,] 4 4 [2,] 6 6 [3,] 3 3 [4,] 4 4 [5,] 3 3 [6,] 5 5 [7,] 8 8 [8,] 9 9 [9,] 3 3 [10,] 7 7 我想我会看到: xy [1,] 4 [2,] […]

如何将函数应用于R中matrix(或dataframe)的每一行

假设我有一个2×2的matrix和一个把2个vector作为它的一个参数的函数。 我想将这个函数应用到matrix的每一行,并得到一个n向量。 如何在R中做到这一点? 例如,我想计算三点的2D标准正态分布的密度: bivariate.density(x=c(0,0),mu=c(0,0), sigma=c(1,1), rho=0){ exp(-1/(2*(1-rho^2))*(x[1]^2/sigma[1]^2+x[2]^2/sigma[2]^2-2*rho*x[1]*x[2]/(sigma[1]*sigma[2]))) * 1/(2*pi*sigma[1]*sigma[2]*sqrt(1-rho^2)) } out=rbind(c(1,2),c(3,4),c(5,6)); 如何将函数应用到每一行? 如何通过指定的方式将除了点之外的其他参数的值传递给函数? 谢谢!

统计独特的价值

假设我有: v = rep(c(1,2, 2, 2), 25) 现在,我要计算每个唯一值出现的次数。 unique(v)返回唯一值是什么,但不是多less。 > unique(v) [1] 1 2 我想要一些给我的东西 length(v[v==1]) [1] 25 length(v[v==2]) [1] 75 但作为一个更一般的单线:)一些接近(但不完全)像这样: #<doesn't work right> length(v[v==unique(v)])

如何将表转换为数据框

我在R有一个表有这样的str() : table [1:3, 1:4] 0.166 0.319 0.457 0.261 0.248 … – attr(*, "dimnames")=List of 2 ..$ x: chr [1:3] "Metro >=1 million" "Metro <1 million" "Non-Metro Counties" ..$ y: chr [1:4] "q1" "q2" "q3" "q4" 我打印时看起来像这样: y x q1 q2 q3 q4 Metro >=1 million 0.1663567 0.2612212 0.2670441 0.3053781 Metro <1 million 0.3192857 0.2480012 […]

如何用ggplot更改坐标轴上的数字格式?

我使用R和ggplot来绘制一些数据的散点图,除了y轴上的数字出现在计算机样式指数格式中,例如4e + 05,5e + 05等,都是很好的。不可接受的,所以我想把它们显示为50万,40万,等等。 获得正确的指数符号也是可以接受的。 该图的代码如下所示: p <- ggplot(valids, aes(x=Test, y=Values)) + geom_point(position="jitter") + facet_grid(. ~ Facet) + scale_y_continuous(name="Fluorescent intensity/arbitrary units") + scale_x_discrete(name="Test repeat") + stat_summary(fun.ymin=median, fun.ymax=median, fun.y=median, geom="crossbar") 任何帮助非常感谢。