以下是我正在使用的数据。 https://d396qusza40orc.cloudfront.net/rprog%2Fdata%2Fspecdata.zip
我试图创建一个名为"污染物的功能"将加载选定的文件,聚合(rbind)列,并返回某列的平均值。除了如何运行循环之外,我已经找到了所有内容,因此我可以将多个文件转换为一个大数据框。
pollutantmean <- function(directory = "specdata", pollutant, id = 1:332) {
empty_tbl <- data.frame()
for (id in 1:332) {
files_full <- Sys.glob("*.csv")
fileQ <- files_full[[i]]
empty_tbl <- rbind(empty_tbl, read.csv(fileQ, header = TRUE))
}
goodata <- na.omit(empty_tbl)
if(pollutant == "sulfate") {
mean(goodata[,2])
} else {
mean(goodata[,3])
}
}
这个for循环本身就可以工作,但是当我尝试使用我更大的功能时
Qt3DCore::QEntity * meshEntity = new Qt3DCore::QEntity( rootEntity );
Qt3DRender::QMesh * mesh = new Qt3DRender::QMesh();
QUrl url;
url.setScheme("file");
url.setPath("/tmp/trefoil.obj");
mesh->setSource( url );
// now i print some of properties.
qDebug() << mesh->geometry() << ", children nodes=" << mesh->childrenNodes().count();
// ... children... primitiveCount... and so on. I see only empty values.
我在read.table中得到&#34;错误(file = file,header = header,sep = sep,quote = quote,: &#39;文件&#39;必须是字符串或连接&#34;。
我完全失去了如何解决这个问题,并尝试了许多不同的方法。我确定我弄乱了文件的命名,但我自己尝试了for循环,它运行良好......
答案 0 :(得分:0)
考虑在使用function的directory参数的csv文件上使用__exit__
。下面假设 specdata 是当前工作目录的子文件夹:
lapply()