我正在使用 RStudio 项目来处理机密数据(即与工作目录关联的项目,非版本控制)。我想与合作者共享我的脚本confidential_script.R
和项目,而不共享任何真实数据,包括临时文件或元数据。我确保不保存或共享任何文件。但是,Windows 中的 RStudio 会自动创建带有项目元数据的隐藏文件夹。confidential_project.Rproj
.RData
.Rproj.user
我可以在不泄露任何机密信息的情况下共享 RStudio 项目文件吗?
我正在使用 RStudio 项目来处理机密数据(即与工作目录关联的项目,非版本控制)。我想与合作者共享我的脚本confidential_script.R
和项目,而不共享任何真实数据,包括临时文件或元数据。我确保不保存或共享任何文件。但是,Windows 中的 RStudio 会自动创建带有项目元数据的隐藏文件夹。confidential_project.Rproj
.RData
.Rproj.user
我可以在不泄露任何机密信息的情况下共享 RStudio 项目文件吗?
管理机密依赖项的最佳方法是将它们声明为脚本顶部的 R 对象,并消除共享元数据文件(如 R 项目或 RStudio 项目)的需要。
理想情况下,一个人会创建一个包含随机/匿名数据的机密信息的测试版本,开发一些测试/报告以进行验证,并将这些项目包含在 R 脚本中,以便其他合作者可以确保它在与实时数据一起使用之前工作。
脚本、参数、测试数据和测试用例使脚本完全可重现。
示例:下载并合并 Pokémon 统计文件
以下示例脚本下载前七代神奇宝贝的统计数据,并将它们组合成一个数据框以供后续分析。
# name of zip file assigned to theZipFile object
theZipFile <- "https://raw.githubusercontent.com/lgreski/pokemonData/master/pokemonData.zip"
download.file(theZipFile,
"pokemonData.zip",
method="curl",mode="wb")
unzip("pokemonData.zip")
thePokemonFiles <- list.files("./pokemonData",
full.names=TRUE)
thePokemonFiles
pokemonData <- lapply(thePokemonFiles,function(x) read.csv(x))
# a list of 7 data frames
summary(pokemonData)
pokemonData <- do.call(rbind,pokemonData)
summary(pokemonData)