我现在正在学习mongolite/mongoDB,并发现:
https://cran.r-project.org/web/packages/mongolite/vignettes/intro.html
我在里面看到了这样的代码:
tbl <- m$mapreduce(
map = "function(){emit({cut:this.cut, color:this.color}, 1)}",
reduce = "function(id, counts){return Array.sum(counts)}"
)有人能告诉我这些函数是用什么写的吗?我不认为它们是R函数。
发布于 2015-07-21 21:29:35
R语言允许您创建环境,在环境中将函数与$-运算符引用,就像从列表中提取项一样。因此,m$mapreduce调用一个R函数并将文本发送到数据库引擎:http://docs.mongodb.org/manual/reference/command/mapReduce/ --如果您安装包并执行help(pac=mongolite) --您将看到包只有一个公开函数,即允许任何函数调用的mongo。然后,您可以在帮助页面和vignette上查看示例。
(注意:如果不首先安装和设置数据库可执行文件,则会出现错误。)
如果在加载mongolite时执行此操作,则会得到在创建mongo函数时定义的环境中的对象列表:
ls(envir=environment(mongo))该环境中有一组对象似乎保存了您可能感兴趣的内容:
[14] "mongo_collection_aggregate"
[15] "mongo_collection_command"
[16] "mongo_collection_command_simple"
[17] "mongo_collection_count"
[18] "mongo_collection_create_index"
[19] "mongo_collection_distinct"
[20] "mongo_collection_drop"
[21] "mongo_collection_drop_index"
[22] "mongo_collection_find"
[23] "mongo_collection_find_indexes"
[24] "mongo_collection_insert_bson"
[25] "mongo_collection_insert_page"
[26] "mongo_collection_mapreduce"
[27] "mongo_collection_name"
[28] "mongo_collection_new"
[29] "mongo_collection_remove"
[30] "mongo_collection_rename"
[31] "mongo_collection_stats"
[32] "mongo_collection_update" https://stackoverflow.com/questions/31549371
复制相似问题