0

我正在尝试加载保存在某个文件夹中的数据框。我有一个 bash 脚本,它遍历*.gzip文件夹中的所有文件并将文件名作为参数传递给 R 脚本 ( blah.r $file_name)。现在,在 R 脚本中,文件名保存为

file_name = commandArgs(TRUE)[1]

并打印正确的文件名。但是,当我尝试加载文件时

data(file_name)

R 认为 file_name 是一个字符串,而不是一个变量,所以它说它 can't find "file_name"

如何让 R 将此变量识别为变量而不是文字字符串?

4

1 回答 1

2

这个问题的答案是这样的

 read.table(file = file_name, ....)

哪里....是附加参数来指定包含您希望加载的数据的文本文件的性质。

如果数据不在文本文件中,而是在其他一些(可能是二进制的)格式中,那么您将需要使用正确的函数来导入这些数据。例如,如果数据以 R 的一种格式(通过save()saveRDS())存储,则:

load(file = file_name) ## for save()-ed objects

foo <- readRDS(file = file_name) ## for objects serialised via saveRDS()

你提到的文件是*.gzip. 如果是这样,那么看看?connectionsgzip()函数,它也可以传递一个包含要打开的文件名的对象,如下所示:

gzip(file_name, ....)

....可能需要指定进一步的参数(阅读帮助页面)。

于 2012-10-18T08:01:20.867 回答