另一张出版物的图表,另一天在ggplot2中调整了一些东西…我在哼哼? 我不确定… dat <- data.frame(x = rnorm(100), y = rnorm(100)) ggplot(dat, aes(x=x,y=y)) + geom_point() + labs(y=expression(Blah[1])) dat <- data.frame(x = rnorm(100), y = rnorm(100)) ggplot(dat, aes(x=x,y=y)) + geom_point() + labs(y=expression(Blah[1d])) 我正在努力解决如何在轴标签中有下标字母。 第一个例子只是一个数字,只要你在方括号中有一个字符就会失败。 Blah [下标(1d)]基本上就是我所需要的,但是我不知道如何让它在下标中有字母。 已尝试变化,包括粘贴()等 当然,为了增加挫折感 labs(y=expression(Blah[12])) – 这是有效的 labs(y=expression(Blah[d])) – 这是有效的 labs(y=expression(Blah[d1])) – 这是有效的 labs(y=expression(Blah[1d])) – 失败。 思考?
背景 德国有16个联邦州,其中10个属于西德,其中6个属于东德。 在某些方面,例如某些癌症的死亡率,十个原西方国家与六个原东方国家之间存在长期的差异。 各组内各州之间也有差异。 为了显示不同国家之间的差异,从每个国家绘制数据,例如年龄标准化乳腺癌死亡率,可以有一定的意义。 有16行的情节并不总是一个好的select,我不想就此进行讨论。 有时候,权力就是这样说的。 问题 区分情节中的16条线可能是困难的。 为此,我通常使用RColorBrewer软件包中的颜色组合( Set3的前十种颜色再加上该调色板的前六种颜色,对应于十个前西和前六个东州)和线型(一行键入东部,西部一个)。 使用lattice包装,从1998年到2010年的年龄标准化的乳腺癌死亡率的情节可能是这样的: 这个问题 我想用ggplot做一个类似的情节,但我还没有想出如何将图例中的颜色和线条types结合起来。 到目前为止,我已经得到了很多: 如果可以在ggplot传说中结合颜色和线条types,怎么去做呢? 以下是创build数据框和图的代码: mort3 <- structure(list(State = structure(c(8L, 9L, 11L, 12L, 4L, 2L, 6L, 13L, 3L, 5L, 7L, 10L, 14L, 15L, 1L, 16L, 8L, 9L, 11L, 12L, 4L, 2L, 6L, 13L, 3L, 5L, 7L, 10L, 14L, 15L, 1L, 16L, 8L, 9L, […]
首先,我必须承认,我对knitr和可重复分析的概念很陌生,但是我可以看到它在改进我目前的工作stream程(其中包括大量复制到word文档中)上的潜力。 我经常不得不按小组(医院在这个例子中)生成多个报告,在每个医院内,可能会有许多不同的病房,我正在报告一个结果。 以前我用R语言把所有的图表和分析都用R语言进行,然后复制/粘贴工作就开始了。 然而,读完这篇文章后( Sweave会自动生成许多PDF文件? ),这让我希望我可以跳过许多步骤,从R直接通过Rnw / knitr进行报告。 然而,在尝试一下之后,我发现有些东西没有完全解决(因为Rn中的R环境似乎没有认识到我正试图传递给它的循环variables?)。 ## make my data Hospital <- c(rep("A", 20), rep("B", 20)) Ward <- rep(c(rep("ICU", 10), rep("Medicine", 10)), 2) Month <- rep(seq(1:10), 4) Outcomes <- rnorm(40, 20, 5) df <- data.frame(Hospital, Ward, Month, Outcomes) ## Here is my current work flow– produce all plots, but export as png […]
我有一个data.frame,我想按行转换为一个列表,这意味着每一行将对应于自己的列表元素。 换句话说,我想要一个列表,只要data.frame有行。 到目前为止,我已经通过以下方式解决了这个问题,但是我想知道是否有更好的方法来处理这个问题。 xy.df <- data.frame(x = runif(10), y = runif(10)) # pre-allocate a list and fill it with a loop xy.list <- vector("list", nrow(xy.df)) for (i in 1:nrow(xy.df)) { xy.list[[i]] <- xy.df[i,] }
我试图用GGPLOT2绘制格型数据,然后在样本数据上叠加一个正态分布来说明底层数据有多远。 我希望有一个正常的发展方向与面板具有相同的意思和定义。 这里是一个例子: library(ggplot2) #make some example data dd<-data.frame(matrix(rnorm(144, mean=2, sd=2),72,2),c(rep("A",24),rep("B",24),rep("C",24))) colnames(dd) <- c("x_value", "Predicted_value", "State_CD") #This works pg <- ggplot(dd) + geom_density(aes(x=Predicted_value)) + facet_wrap(~State_CD) print(pg) 这一切都很好,并产生一个很好的数据面板图。 如何在顶部添加正常的dist? 看来我会使用stat_function,但是这个失败: #this fails pg <- ggplot(dd) + geom_density(aes(x=Predicted_value)) + stat_function(fun=dnorm) + facet_wrap(~State_CD) print(pg) 看来stat_function与facet_wrapfunction不兼容。 我如何让这两个玩得很好? – – – – – – 编辑 – – – – – […]
我正在绘制并对均匀分布的时间序列进行计算。 时间戳当前以整数forms存储,表示自UNIX纪元(例如1352068320 )以来的1352068320 ,但Date对象似乎更适合于绘图。 我怎么做转换? 我读过?Date , ?Date和??epoch ,但似乎错过了这些信息。
所以" xx yy 11 22 33 "将变成"xxyy112233" 。 我怎样才能做到这一点?
如何返回R函数中的多个对象? 在Java中,我会创build一个类,也许Person有一些私有variables和封装,也许, height , age等。 但是在R中,我需要传递数据组。 例如,我如何使一个R函数返回一个字符列表和一个整数?
我们如何使用data.table中的数字索引(位置)向量来select多列? 这是我们如何处理data.frame : df <- data.frame(a = 1, b = 2, c = 3) df[ , 2:3] # bc # 1 2 3
我正在做一个相对简单的分析,我把它放在一个函数中,放在一个特定文件夹的所有文件中。 我想知道是否有人有任何提示,以帮助我在一些不同的文件夹上自动化过程。 首先,我想知道是否有一种方式直接读入特定文件夹中的所有文件。我相信下面的命令将列出所有的文件: files <- (Sys.glob("*.csv")) …我从使用Rfind具有指定扩展名的所有文件 然后下面的代码将所有这些文件读入R. listOfFiles <- lapply(files, function(x) read.table(x, header = FALSE)) 从操纵R中的多个文件 但是这些文件似乎是作为一个连续的列表读入的,而不是单独的文件…我怎样才能改变脚本来打开特定文件夹中的所有csv文件作为单独的数据框? 其次,假设我可以单独读取所有的文件,那么我怎么一次完成所有这些dataframe的function。 例如,我创build了四个小数据框,以便说明我想要的内容: Df.1 <- data.frame(A = c(5,4,7,6,8,4),B = (c(1,5,2,4,9,1))) Df.2 <- data.frame(A = c(1:6),B = (c(2,3,4,5,1,1))) Df.3 <- data.frame(A = c(4,6,8,0,1,11),B = (c(7,6,5,9,1,15))) Df.4 <- data.frame(A = c(4,2,6,8,1,0),B = (c(3,1,9,11,2,16))) 我也做了一个例子function: Summary<-function(dfile){ SumA<-sum(dfile$A) MinA<-min(dfile$A) MeanA<-mean(dfile$A) MedianA<-median(dfile$A) MaxA<-max(dfile$A) […]