我正在为大型数据集构建分析工作流程,但首先我必须在较小规模的数据集上验证它.我想做的是将我的"采样"数据集与实际数据集分开,方法是将它们放在这样的环境中:
sample_data<-new.env()
attach(sample_data)
# downloading sample_data sets
sample_df_1 <- some_download_function(parameters1)
sample_df_2 <- some_download_function(parameters2)
...
# doing some stuff with them
...
Run Code Online (Sandbox Code Playgroud)
然而,当我做到这一点,sample_df_1并且sample_df_2将被存储在全球环境,而不是我的sample_data环境.当然我可以使用,assign(..., envir=sample_data)但这有点乏味,我不希望它们出现在最终的代码中.
使用它也不理想,with因为它内部的代码行不能一个接一个地执行,这使得它在开发阶段相当不方便.
我希望实现的是同一种行为的debug和undebug,例如:
switch_to_env(sample_data)
# Everything done here will be done within environment "sample_data"
# And the lines of codes here can be executed one by one
switch_to_env(.GlobalEnv)
Run Code Online (Sandbox Code Playgroud)
正如@Gregor指出的那样,"设置选项"可能更好地描述了我正在寻找的内容:一个允许用户指定R REPL评估表达式的环境的选项.
谢谢!
您可以将变量分配给新环境,如下所示:
sample_data<-new.env()
sample_data$sample_df_1 <- some_download_function(parameters1)
sample_data$sample_df_2 <- some_download_function(parameters2)
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过附加现有环境或使用新环境来访问这些变量sample_data$sample_df_1
你是这个意思吗?
| 归档时间: |
|
| 查看次数: |
489 次 |
| 最近记录: |