我在R中有一个函数,我需要有条件地加载一个 .rda 文件。例如,我希望函数的用户能够指定他们要加载的文件,然后R将加载相应的数据文件。
该函数有两个参数,状态(即“NY”)和我希望它加载的 .rda 文件(即“data_0203.rda”。
因为我需要读取的池中没有那么多 .rda 文件,所以我想一种方法就是执行 if 语句,如下所示。
if(datafile=="data_9091"||datafile=="data_9091.rda")
{load("/Users/blahblahblah/data_9091.rda")
state.in=as.data.frame(data_9091[[which(names(data_9091)==(tolower(state)))]][1])
state.out=as.data.frame(data_9091[[which(names(data_9091)==(tolower(state)))]][2]})
else if(datafile=="data_9192"||datafile=="data_9192.rda")
{load("/Users/blahblahblah/data_9192.rda")
state.in=as.data.frame(data_9192[[which(names(data_9192)==(tolower(state)))]][1]
state.out=as.data.frame(data_9192[[which(names(data_9192)==(tolower(state)))]][2]}
我知道它不是优雅或高效或任何东西,即使它有效,我仍然希望有一个更好的方法来做到这一点。有任何想法吗?