如何从R脚本中的配置文件获取参数
收藏

有没有办法从R脚本中的文件中读取参数?

我想创建一个配置文件

db_host=xxxx
db_name=xxxx
db_user=xxxx
db_pass=xxxx

然后在R脚本中使用它来创建数据库连接。

dbConnect(PgSQL(), host="xxxx", dbname="xxxxx", user="xxxx", password="xxxxx")

然后如何在R脚本中使用它。

编辑:我还想知道是否有一种方法可以跨R脚本,Perl脚本和Java使用单个配置文件?

最佳答案

我会去YAML。设计用于与XML不同的人可读写性。 R包“ yaml”在CRAN上存在,我确定perl和java包也存在。

http://ftp.heanet.ie/mirrors/cran.r-project.org/web/packages/yaml/index.html

您不能获得比这更多的跨平台:

http://yaml.org/

至少直到我写了一个YAML FORTRAN包...

[编辑]

例。假设您有config.yml:

db:
 host : foo.example.com
 name : Foo Base
 user : user453
 pass : zoom

然后yaml.load_file(“ config.yml”)返回:

$db
$db$pass
[1] "zoom"

$db$user
[1] "user453"

$db$name
[1] "Foo Base"

$db$host
[1] "foo.example.com"

所以你也是:

library(yaml)
config = yaml.load_file("config.yml")
dbConnect(PgSQL(), host=config$db$host, dbname=config$db$name, user=config$db$user, password=config$db$pass)

根据需要添加任意多个部分和参数。 Sweeeeyit。

yaml.load_file将您的配置作为R列表返回,并且您可以使用$表示法访问列表的命名元素。

    公众号
    关注公众号订阅更多技术干货!