AWS S3中存储的R脚本

AWS S3中存储的R脚本,r,amazon-s3,R,Amazon S3,我正在开发一个脚本,web应用程序将使用该脚本生成见解。在本地机器中,我可以拆分脚本,以便在后续任务中根据需要使用source()执行它们。一个简化的例子如下: 脚本1:计算抵押贷款现金流 脚本2:计算净值 脚本1中输出的现金流 这种方法使我只需要维护脚本1一次,因为脚本2直接引用脚本1。我遇到的问题是,我无法让source()处理我上传到S3存储桶的R脚本。到目前为止,我所做的研究让我认为aws.s3软件包是我需要的工具,但我似乎无法让它工作 我已经能够完成以下工作: url<- '

我正在开发一个脚本,web应用程序将使用该脚本生成见解。在本地机器中,我可以拆分脚本,以便在后续任务中根据需要使用source()执行它们。一个简化的例子如下:

  • 脚本1:计算抵押贷款现金流
  • 脚本2:计算净值 脚本1中输出的现金流
这种方法使我只需要维护脚本1一次,因为脚本2直接引用脚本1。我遇到的问题是,我无法让source()处理我上传到S3存储桶的R脚本。到目前为止,我所做的研究让我认为aws.s3软件包是我需要的工具,但我似乎无法让它工作

我已经能够完成以下工作:

url<- 'https://s3.ca-central-1.amazonaws.com/[bucket name]/[bucket sub-folder]/rscript.R'

Sys.setenv("AWS_ACCESS_KEY_ID" = "My access key",
       "AWS_SECRET_ACCESS_KEY" = "My secret access key",
       "AWS_DEFAULT_REGION" = "ca-central-1")

get_bucket(bucket= '[bucket name]')
其他可能的选择:我浏览了这些闪亮的文档,我的解释是它是用于交互式web图形的。如果Shiny真的适合我的问题,请告诉我


非常感谢您的帮助

使用
cloudyr::s3source()

从:

s3source()


在你的情况下,像这样的事情

s3source(object = "rscript.R", bucket = get_bucket('[bucket name]'), echo = TRUE)

aws s3 cp
sync
?我相信它会是cp,因为我只尝试访问我的bucket中的一个文件。起初不起作用,但后来我通读了自述文件,一旦我使用最新的稳定版本install.packages(“aws.s3”,repos=c(“cloudyr=”)安装了它它解决了如何使用子文件夹的问题。/[sub folder]/rscript.R位于对象字段中。再次感谢!fwiw似乎此函数只是一个包装器,用于下载脚本,然后运行
source
s3source(object = "rscript.R", bucket = get_bucket('[bucket name]'), echo = TRUE)