我在R中做了一个不是很大的data.frame,但是需要花费相当多的时间来构build。 我会把它保存为一个文件,我可以再次打开R?
我想在R中逐行构build一个数据框。我已经完成了一些search,所有我想出的build议是创build一个空列表,保留一个列表索引标量,然后每次添加到列表一个单行数据框,并提前一个列表索引。 最后,列表中的do.call(rbind,) 。 虽然这个工作,似乎非常繁琐。 没有一个更简单的方法来实现相同的目标? 显然,我指的是我不能使用某些apply函数的情况,并且显式地需要逐行创builddataframe。 至less,有没有一种方法可以push入列表的最后,而不是明确地跟踪最后使用的索引?
我有以下2个data.frames: a1 <- data.frame(a = 1:5, b=letters[1:5]) a2 <- data.frame(a = 1:3, b=letters[1:3]) 我想find行a1有a2没有。 有这种types的操作内置函数? (ps:我为它写了一个解决scheme,我只是好奇,如果有人已经做了一个更精心的代码) 这是我的解决scheme: a1 <- data.frame(a = 1:5, b=letters[1:5]) a2 <- data.frame(a = 1:3, b=letters[1:3]) rows.in.a1.that.are.not.in.a2 <- function(a1,a2) { a1.vec <- apply(a1, 1, paste, collapse = "") a2.vec <- apply(a2, 1, paste, collapse = "") a1.without.a2.rows <- a1[!a1.vec %in% a2.vec,] return(a1.without.a2.rows) […]
我有一个数据框,并为该数据框中的每一行,我不得不做一些复杂的查找,并追加到一个文件的一些数据。 dataFrame包含了来自生物学研究中使用的96孔板的选定孔的科学结果,所以我想要做这样的事情: for (well in dataFrame) { wellName <- well$name # string like "H1" plateName <- well$plate # string like "plate67" wellID <- getWellID(wellName, plateName) cat(paste(wellID, well$value1, well$value2, sep=","), file=outputFile) } 在我的程序世界里,我会做一些事情: for (row in dataFrame) { #look up stuff using data from the row #write stuff to the file } 什么是“R方式”做到这一点?
什么时候应该使用data.frame ,什么时候使用matrix更好? 两者都保持矩形格式的数据,所以有时不清楚。 什么时候使用哪种数据types有什么一般的经验法则?
可能重复: 创build一个空的Data.Frame 我需要在指定列名的R中创build一个空的数据框。 任何最简单的方法?
如何改变这个input(顺序:时间,进出,文件): Time In Out Files 1 2 3 4 2 3 4 5 到这个输出(与序列:时间,出,在,文件)? Time Out In Files 1 3 2 4 2 4 3 5 这里是虚拟R数据: table <- data.frame(Time=c(1,2), In=c(2,3), Out=c(3,4), Files=c(4,5)) table ## Time In Out Files ##1 1 2 3 4 ##2 2 3 4 5
我试图初始化data.frame没有任何行。 基本上,我想为每个列指定数据types并命名它们,但是没有创build任何行作为结果。 到目前为止,我所能做到的最好的事情是: df <- data.frame(Date=as.Date("01/01/2000", format="%m/%d/%Y"), File="", User="", stringsAsFactors=FALSE) df <- df[-1,] 它创build了一个data.frame,其中包含了我想要的所有数据types和列名,但也创build了一个无用的行,然后需要删除。 有一个更好的方法吗?
在RI发现自己做了很多这样的事情: adataframe[adataframe$col==something]<-adataframe[adataframe$col==something)]+1 这种方式是漫长而乏味的。 有没有办法给我 引用我正在尝试改变的对象 adataframe[adataframe$col==something]<-$self+1 ?
下面的代码将一个向量与一个dataframe结合起来: newrow = c(1:4) existingDF = rbind(existingDF,newrow) 但是,这段代码总是在数据框的末尾插入新行。 如何在数据框内的指定点插入行? 例如,让我们说数据框有20行,我怎样才能插入10行和11行之间的新行?