Tag: r

R中的全局variables

我是R编程的新手。 虽然我正在阅读手册,但我也想问社区: “我们如何在一个函数里面设置全局variables?” 任何指针都会有所帮助。 问题2:关于绘图, 我正在使用单张图来绘制多个图表,并且要区分它们中的每一个,我想为它们中的每一个添加标题。 任何人都可以告诉我怎样才能做到这一点?

将Excel文件导入到R,xlsx或xls中

请有人可以帮助我最好的方式导入一个Excel 2007(.xlsx)文件到R.我已经尝试了几种方法,似乎没有工作。 我已经升级到2.13.1,Windows XP,xlsx 0.3.0,我不知道为什么错误不断出现。 我试过了: AB<-read.xlsx("C:/AB_DNA_Tag_Numbers.xlsx","DNA_Tag_Numbers") 要么 AB<-read.xlsx("C:/AB_DNA_Tag_Numbers.xlsx",1) 但我得到的错误: Error in .jnew("java/io/FileInputStream", file) : java.io.FileNotFoundException: C:\AB_DNA_Tag_Numbers.xlsx (The system cannot find the file specified) 谢谢。

如何从私人数据创build示例数据集(使用不具名的占位符replacevariables名称和级别)?

为了提供一个方法的可重复的例子,必须经常提供数据集。 我不想构build一个示例数据集,而是希望使用我自己的一些数据。 但是这个数据不能被释放。 我希望用无意义的占位符(例如V1 …. V5,L1 …. L5)replacevariables(列)名称和因子级别。 是一个自动的方式来做到这一点? 理想情况下,这将在R中完成,接收dataframe并生成这个匿名dataframe。 有了这样的数据集,只需在脚本中search并replacevariables名称,就可以得到一个可公开释放的可重复的示例。 这样的过程可能会增加适当的数据在可复制的例子中,甚至在问题,评论和错误报告中包含可重复的例子。

如何通过sorting数据框中的列来快速形成组(四分位数,十进制数等)

我看到许多问题和答案重新order和sort 。 是否有向量或数据框分组(如四分位数或十分位数)? 我有一个“手动”的解决scheme,但可能有一个更好的解决scheme已经过集体testing。 这是我的尝试: 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 h -0.80591167 […]

将多项式模型拟合到R中的数据

我已经阅读了这个问题的答案,他们相当有帮助,但是我特别需要R的帮助。 我在R中有一个示例数据集,如下所示: x <- c(32,64,96,118,126,144,152.5,158) y <- c(99.5,104.8,108.5,100,86,64,35.3,15) 我想为这些数据拟合一个模型,使得y = f(x) 。 我希望它是一个三阶多项式模型。 我怎样才能在R? 另外,R可以帮我find最合适的模型吗?

有一个R函数来查找向量中元素的索引吗?

在R中,我有一个元素x和一个向量v 。 我想findv中等于x的元素的第一个索引。 我知道一个办法是: which(x == v)[[1]] ,但这似乎过分低效。 有没有更直接的方法来做到这一点? 对于奖励积分,是否有一个函数,如果x是一个向量? 也就是说,它应该返回一个索引向量,指示v中每个元素的位置。

将具有混合date格式的variables转换为r中的一种格式

我的数据框样本: date 1 25 February 1987 2 20 August 1974 3 9 October 1984 4 18 August 1992 5 19 September 1995 6 16-Oct-63 7 30-Sep-65 8 22 Jan 2008 9 13-11-1961 10 18 August 1987 11 15-Sep-70 12 5 October 1994 13 5 December 1984 14 03/23/87 15 30 August 1988 16 26-10-1993 17 […]

ggplot,在各个面之间的点之间画线

使用ggplot2,我如何绘制在各个方面之间运行的趋势线。 library(ggplot2) df <- data.frame(y=c(1,2,3),x=1,Set=LETTERS[1:3]) ggplot(df,aes(x,y)) + theme_bw() + theme(legend.position=c(0,1),legend.justification=c(0,1)) + geom_point(aes(fill=Set),color="black",shape=21,size=3) + facet_grid(~Set) + xlim(1,5) 其中产生以下内容: 在上面,我想在三点之间划一条线,穿过各个方面。

RE:使用ggplot2将各个栏上的数字alignment

我有需要在ggplot上的标签上方放置标签。 我曾经使用find的方法( 这里 ),但这似乎不起作用了,因为我ggplot2更新,因为我现在得到错误消息: Error in continuous_scale(c("y", "ymin", "ymax", "yend", "yintercept", : unused argument(s) (formatter = "percent") 如何在使用示例时再次在条上方绘制数值: df <- structure(list(A = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L), .Label = c("0-50,000", "50,001-250,000", "250,001-Over"), class = "factor"), B = structure(c(1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L), .Label = c("0-50,000", "50,001-250,000", "250,001-Over"), […]

为什么在分组的data.table中使用lm上的更新会丢失模型数据?

好吧,这是一个奇怪的。 我怀疑这是data.table内部的一个bug,但是如果有人能解释为什么会发生这种情况,那么这将是有用的 – update在做什么? 我在data.table里面使用list(list())技巧来存储拟合的模型。 当您为不同的分组创build一个lm对象序列,然后update这些模型时,所有模型的模型数据将变为最后一个分组的模型数据。 这似乎是一个参考挂在哪里应该有一个副本,但我无法find哪里,我不能在lm之外重现此update 。 具体例子: 从虹膜数据开始,先将这三种物种的样本大小进行比较,然后对每个物种进行lm模型拟合,更新这些模型: set.seed(3) DT = data.table(iris) DT = DT[rnorm(150) < 0.9] fit = DT[, list(list(lm(Sepal.Length ~ Sepal.Width + Petal.Length))), by = Species] fit2 = fit[, list(list(update(V1[[1]], ~.-Sepal.Length))), by = Species] 原始数据表的每个种类都有不同的数字 DT[,.N, by = Species] # Species N # 1: setosa 41 # 2: versicolor 39 # […]