如果以前在R

时间:2015-09-11 06:30:23

标签: r csv if-statement dataframe

我正在编写一个R脚本(不是函数,只是一个命令集合),它将csv文件读入数据框。 CSV文件很大,我不想在每次运行脚本时读取它,如果已经读过的话。这就是我检查变量是否存在的方式:

if (!exists("df")) {
    df <- read_csv(file = "./some_file.csv")
}

但是,无论df是否存在,每次运行脚本时,read_csv函数都会运行。

我在这里想念的是什么?我应该指定应该搜索df数据框的位置吗?

编辑:这是我想要实现的一些背景。通常,在工作时我在R或Rstudio中以交互方式工作。如果我正在准备一个文件,我会读它,然后数据在GlobalEnvinronment中,我玩我的数据。我试图将我的所有工作都放在脚本中并逐步添加。在脚本的开头,我读了这个大约11MB的CSV文件,然后开始操作数据。但是,当我向我的脚本添加新行并且我想测试它们时,我不想再次读取CSV文件。它已被读取,数据框在全局环境中可用。这就是我在if语句中调用read_csv()函数的原因。

问题是尽管全局环境中存在变量,但每次运行脚本时,都会运行read_csv()函数,就像忽略if语句一样。

0 个答案:

没有答案