2013-11-23 29 views
1

我的电脑中有三个磁盘,分别是c:\ d:\ e :. 我通过两种方式列出所有文件,得到不同的结果,是怎么回事?无法以两种方式获得相同的文件编号

list.files("c:/",recursive=TRUE)->x1 
list.files("d:/",recursive=TRUE)->x2 
list.files("e:/",recursive=TRUE)->x3 
print(c(length(x1),length(x2),length(x3))) 
[1] 86467  2 832 
sapply(c("c:/","d:/","e:/"),function(y){length(list.files(y,recursive=TRUE))}) 
    c:/ d:/ e:/ 
86470  2 832 

回答

1

东西正在运行并在c:/驱动器上创建文件。甚至可能是您的R会话将每个list.files的输出存储在一个临时文件中!三个电话,三个文件...

作为额外的提示,您可以将list.files("c:/", recursive = TRUE, full.names = TRUE)的输出存储两次,并使用setdiff来查找额外文件的名称和位置。

相关问题