将系统命令的内容读入R中的数据帧

时间:2016-01-19 16:23:27

标签: r linux

我想列出目录中的所有文件(包括子目录),然后将其读入R中的数据框。

目前我已尝试使用系统命令。我已设法使用如下命令列出所有文件:

system("ls -l $(find ~/starting_location/ -type f)")

但是我无法弄清楚如何将其转换为R中的数据框。我一直在尝试将其写入文本文件,然后导入它,但这还没有成功(例如下面)。

system("ls -l $(find ~/starting_location.prague.UDM/ -type f) > ~/starting_location/file_list.txt")

以上命令错误:

ls: cannot access starts: No such file or directory ls: cannot access here: No such file or directory

有人能够建议我的代码行出了什么问题吗?是否有办法直接将其转换为R而无需将其写入文本文件?

1 个答案:

答案 0 :(得分:2)

如果您尝试列出目录中的文件,请查看list.files

list.files("~/Documents", recursive = TRUE)

输出将是文件名的向量(参数full.names = TRUE/FALSE也可能是有意义的),然后将向量转换为或将其附加到data.frame(as.data.frame(...)是微不足道的。或cbind(df, vector)