找回密码
 注册
查看: 1908|回复: 0

R语言 yaml包 yaml.load()函数中文帮助文档(中英文对照)

[复制链接]
发表于 2012-10-2 07:32:32 | 显示全部楼层 |阅读模式
yaml.load(yaml)
yaml.load()所属R语言包:yaml

                                         Convert a YAML string into R objects
                                         一个YAML字符串转换成R对象

                                         译者:生物统计家园网 机器人LoveR

描述----------Description----------

Parse a YAML string and return R objects.
解析YAML字符串并返回R对象。


用法----------Usage----------


  yaml.load(string, as.named.list = TRUE, handlers = NULL)
  yaml.load_file(input, ...)



参数----------Arguments----------

参数:string
the YAML string to be parsed  
YAML要解析的字符串


参数:as.named.list
whether or not to return a named list for maps (TRUE by default)  
是否返回一个名为list的图(默认为true)


参数:handlers
named list of custom handler functions for YAML types (see Details).  
YAML类型的自定义处理程序函数的命名列表(见详情)。


参数:input
a filename or connection  
文件名或连接


参数:...
arguments to pass to yaml.load  
参数传递到yaml.load的


Details

详细信息----------Details----------

Use yaml.load to load a YAML string.  For files and connections, use yaml.load_file, which calls yaml.load with the contents of the specified file or connection.
使用yaml.load加载一个YAML字符串。对于文件和连接,使用yaml.load_file,yaml.load指定的文件或连接的内容。

Sequences of uniform data (i.e. a sequence of integers) are converted into vectors.  If the sequence is not uniform, it's returned as a list. Maps are converted into named lists by default, and all the keys in the map are converted to strings.  If you don't want the keys to be coerced into strings, set as.named.list to FALSE.  When it's FALSE, a list will be returned with an additional attribute named 'keys', which is a list of the un-coerced keys in the map (in the same order as the main list).
统一的数据序列(即一个整数序列)被转换成矢量。如果该序列是不统一的,它作为一个列表返回。图的命名列表转换成默认情况下,所有的键在图上被转换成字符串。如果你不想被强制转换成字符串键,设置as.named.list为FALSE。当它是假的,列表将返回一个额外的属性名为键,这是一个在图上的未强制的键(在主列表的顺序相同)。

You can specify custom handler functions via the handlers argument.  This argument must be a named list of functions, where the names are the YAML types (i.e., 'int', 'float', 'seq', etc).  The functions you provide will be passed one argument.  Custom handler functions for string types (all types except sequence and map) will receive a character vector of length 1.  Custom sequence functions will be passed a list of objects. Custom map functions will be passed the object that the internal map handler creates, which is either a named list or a list with a 'keys' attribute (depending on as.named.list). ALL functions you provide must return an object.  See the examples for custom handler use.
通过handlers参数,您可以指定自定义的处理函数。此参数必须是一个已命名的函数列表,其中姓名是YAML类型(例如,诠释,浮动,起等)。你所提供的功能将被传递一个参数。字符串类型(序列和图除外)所有类型的自定义处理函数会接收一个字符的长度为1的向量。自定义序列功能将被传递的对象的列表。自定义图功能,将通过内部映射处理程序创建的对象,这是一个“按键”属性(as.named.list根据命名列表或列表)。您所提供的所有功能必须返回一个对象。请参阅使用自定义处理程序的例子。

This function uses the YAML parser provided by libyaml.
此功能使用的YAML解析器提供的libyaml。


值----------Value----------

If the root YAML object is a map, a named list or list with an attribute of 'keys' is returned.  If the root object is a sequence, a list or vector is returned, depending on the contents of the sequence.  A vector of length 1 is returned for single objects.
如果根的YAML对象是一张图,一个命名列表或列表的属性“按键”返回。如果根对象是一个序列,根据该序列上的内容的列表或向量被返回,。一个向量的长度为1,则返回单个对象。


(作者)----------Author(s)----------


Jeremy Stephens <jeremy.stephens@vanderbilt.edu>



参考文献----------References----------




参见----------See Also----------

as.yaml
as.yaml


实例----------Examples----------


  yaml.load("- hey\n- hi\n- hello")
  yaml.load("foo: 123\nbar: 456")
  yaml.load("- foo\n- bar\n- 3.14")
  yaml.load("foo: bar\n123: 456", as.named.list = FALSE)

## Not run: [#不运行:]
  # reading from a file (uses readLines internally)[从文件中读取(使用readlines方法内部)]
  cat("foo: 123", file="foo.yml", sep="\n")
  yaml.load_file('foo.yml')
  unlink("foo.yml") # tidy up[收拾]

## End(Not run)[#(不执行)]

  # custom scalar handler[自定义标量处理程序]
  my.float.handler <- function(x) { as.numeric(x) + 123 }
  yaml.load("123.456", handlers=list("float#fix"=my.float.handler))[解决“= my.float.handler))]

  # custom sequence handler[自定义序列处理程序]
  yaml.load("- 1\n- 2\n- 3", handlers=list(seq=function(x) { as.integer(x) + 3 }))

  # custom map handler[自定义映射处理程序]
  yaml.load("foo: 123", handlers=list(map=function(x) { x$foo <- x$foo + 123; x }))

  # handling custom types[处理自定义类型]
  yaml.load("!sqrt 555", handlers=list(sqrt=function(x) { sqrt(as.integer(x)) }))
  yaml.load("!foo\n- 1\n- 2", handlers=list(foo=function(x) { as.integer(x) + 1 }))
  yaml.load("!bar\none: 1\ntwo: 2", handlers=list(foo=function(x) { x$one <- "one"; x }))

  # loading R expressions[加载&#341;表达式]
  doc <- yaml.load("inc: !expr function(x) x + 1")
  doc$inc(1)

转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。


注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-24 06:25 , Processed in 0.020676 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表