Tag: r

合并大量的data.frames

可能重复: 同时合并列表中的多个dataframe 示例data.frames : df1 = data.frame(id=c('1','73','2','10','43'),v1=c(1,2,3,4,5)) <br> df2 = data.frame(id=c('7','23','57','2','62','96'),v2=c(1,2,3,4,5,6)) <br> df3 = data.frame(id=c('23','62'),v3=c(1,2)) <br> 注意:每个data.frame的id是唯一的。 我想要得到的matrix看起来像 1 1 NA NA 2 3 4 NA 7 NA 1 NA 10 4 NA NA 23 NA 2 1 43 5 NA NA 57 NA 3 NA 62 NA 5 2 73 2 NA NA 96 […]

维恩图比例和半透明的颜色阴影

我有以下types的计数数据。 A 450 B 1800 A and B both 230 我想要像下面的维恩图一样开发一个丰富多彩的(可能是半透明的十字路口)。 注意:此图是在PowerPoint中手绘的示例,并不按比例。

在data.frame()中移动列而不用重新input

有没有一种方法可以将数据框中的某个位置移动到下一个位置,而无需input全新的data.frame() 例如: a <- b <- c <- d <- e <- f <- g <- 1:100 df <- data.frame(a,b,c,d,e,f,g) 现在让我们说我想在“a”前面“g” 我可以重新input,如 df <- data.frame(g,a,b,c,d,e,f) 但是有没有更快的方法? (想象一下1500+列)

R data.table滑动窗口

使用data.table包实现滑动窗口函数的最佳(最快)方法是什么? 我试图计算滚动中位数,但每个date有多个行(由于2个额外的因素),我认为这意味着动物园rollapplyfunction将无法正常工作。 这是一个使用天真for循环的例子: library(data.table) df <- data.frame( id=30000, date=rep(as.IDate(as.IDate("2012-01-01")+0:29, origin="1970-01-01"), each=1000), factor1=rep(1:5, each=200), factor2=1:5, value=rnorm(30, 100, 10) ) dt = data.table(df) setkeyv(dt, c("date", "factor1", "factor2")) get_window <- function(date, factor1, factor2) { criteria <- data.table( date=as.IDate((date – 7):(date – 1), origin="1970-01-01"), factor1=as.integer(factor1), factor2=as.integer(factor2) ) return(dt[criteria][, value]) } output <- data.table(unique(dt[, list(date, factor1, factor2)]))[, window_median:=as.numeric(NA)] for(i in […]

困惑…()?

在另一个问题中 , sapply(substitute(…()), as.character)被用在一个函数内部以获得传递给函数的名字。 as.character部分听起来不错,但是究竟是什么…()呢? 这不是substitute之外的有效代码: > test <- function(…) …() > test(T,F) Error in test(T, F) : could not find function "…" 一些更多的testing用例: > test <- function(…) substitute(…()) > test(T,F) [[1]] T [[2]] F > test <- function(…) substitute(…) > test(T,F) T

相当于R中的一个python字典

我想在R中做一个python字典。基本上,在python中我有: visited = {} if atom_count not in visited: Do stuff visited[atom_count] = 1 这个想法是,如果我看到具体的,atom_count,我已经访问[atom_count] = 1。因此,如果我再次看到atom_count,我不“做东西”。 Atom_Count是一个整数。 谢谢!

R图:大小和分辨率

我已经堆积到这个问题:我需要用DPI = 1200和具体的打印尺寸来绘制图像。 默认情况下,PNG看起来不错… png("test.png",width=3.25,height=3.25,units="in",res=1200) par(mar=c(5,5,2,2),xaxs = "i",yaxs = "i",cex.axis=1.3,cex.lab=1.4) plot(perf,avg="vertical",spread.estimate="stddev",col="black",lty=3, lwd=3) dev.off() 但是当我应用这个代码时,图像变得非常糟糕,它不能缩放(适合)所需的大小。 我错过了什么? 如何“适合”形象的情节? ,

在ggplot中编辑图例(文本)标签

我花了几个小时看文档和StackOverflow,但没有解决scheme似乎解决了我的问题。 当使用ggplot我不能在图例中获得正确的文本,即使它在我的数据框中。 我已经尝试了scale_colour_manual , scale_fill_manual使用不同的labels=值,例如c("T999", "T888")", "cols" 。 这是我的代码: T999 <- runif(10, 100, 200) T888 <- runif(10, 200, 300) TY <- runif(10, 20, 30) df <- data.frame(T999, T888, TY) ggplot(data = df, aes(x=T999, y=TY, pointtype="T999")) + geom_point(size = 15, colour = "darkblue") + geom_point(data = df, aes(x=T888, y=TY), colour = 'red', size = 10 ) […]

ggplot2中的数字格式轴标签?

我使用ggplot2 0.9.1绘制一个相当简单的图表。 x <- rnorm(100, mean=100, sd = 1) * 1000000 y <- rnorm(100, mean=100, sd = 1) * 1000000 df <- data.frame(x,y) p.new <- ggplot(df,aes(x,y)) + geom_point() print(p.new) 哪些工作,但ggplot2默认为科学记数法是不适合我的观众。 如果我想input以下内容来更改x轴标签格式: p.new + scale_x_continuous(labels = comma) 我得到: Error in structure(list(call = match.call(), aesthetics = aesthetics, : object 'comma' not found 我究竟做错了什么? 我注意到,语言最近从“格式化程序”更改为“标签”。 也许我误解了手册页? 编辑:我确实误读了手册页 在尝试这个之前需要加载library(scales) […]

在朱莉娅平行。 function和限制

在他们的arXiv论文中 ,朱莉娅的原作者提到了以下内容: 2.14 Parallelism 。 并行执行由标准库中的Julia实现的基于消息的多处理系统提供。 语言devise通过提供对称协程来支持这样的库的实现,对称协程也可以被认为是协作调度的线程。 此function允许在库中隐藏asynchronous通信,而不需要用户设置callback。 Julia目前不支持本地线程,这是一个限制,但是具有避免同步使用共享内存的复杂性的优点。 这是什么意思,说朱莉娅不支持本地线程 ? 什么是本地线程? 其他解释型语言如Python或R是否支持这种并行性? 朱莉娅独自一人在这?