我导入了一些列数不等的数据文件,并希望从中创建一个数据框架。我使用将它们转换成向量,现在我尝试将这些向量放入数据帧中。
我使用包{qpcR}中的qpcR来尝试并用NA填充每个向量的其余元素,这样它们都会变成相同的大小。由于某些原因,do.call无法识别该函数。有人能弄明白为什么会这样吗?
library(plyr)
library(qpcR)
files <- list.files(path = "C:/documents", pattern = "*.txt", full.names = TRUE)
readdata <- function(x)
{
con <- file(x, open="rt")
mydata <- readLines(con, warn = FALSE, encoding = "UTF-8")
close(con)
return(mydata)
}
all.files <- lapply(files, readdata)
combine <- do.call(rbind.na, all.files)如果任何人有任何潜在的选择,他们可以想到我也对此持开放态度。实际上,我尝试使用来自这里的函数,但输出没有给出任何列。
以下是错误:
Error in do.call(rbind.na, all.files) : object 'rbind.na' not found这个软件包也已经安装好了。
编辑:由于错误,将cbind.na更改为rbind.na。
发布于 2014-01-17 11:51:27
该函数似乎不是由包导出的。使用qpcR:::rbind.na将允许您访问该函数。
三冒号允许您访问命名空间的内部变量。但是请注意,?":::"建议不要在代码中使用它,这大概是因为在包的未来版本中不能依赖未导出的对象。如果对象是稳定和有用的,它建议与包维护人员联系,以导出对象。
https://stackoverflow.com/questions/21184831
复制相似问题