17

是否有支持 neo4j 的 R 库?我想从 neo4j 构建一个 R 图(例如 igraph),或者 - 反之亦然 - 在 neo4j 中存储一个 R 图。

更准确地说,我正在寻找类似于 Python 的bulbflow的东西。


更新

R 有一个新的 neo4j 驱动程序,看起来很有希望:http: //nicolewhite.github.io/RNeo4j/。我改了正确答案。

4

4 回答 4

13

链接可能会有所帮助。我将在接下来的几天内将 ne04j 与 R 连接起来,并首先使用提供的链接进行尝试。希望能帮助到你。

我试过了,效果很好。这是有效的功能:首先,安装和加载包,然后执行功能:

install.packages('RCurl')
install.packages('RJSONIO')

library('bitops')
library('RCurl')
library('RJSONIO')

query <- function(querystring) {
  h = basicTextGatherer()
  curlPerform(url="localhost:7474/db/data/ext/CypherPlugin/graphdb/execute_query",
    postfields=paste('query',curlEscape(querystring), sep='='),
    writefunction = h$update,
    verbose = FALSE
  )           
  result <- fromJSON(h$value())
  #print(result)
  data <- data.frame(t(sapply(result$data, unlist)))
  print(data)
  names(data) <- result$columns

}

这是一个调用函数的例子:

q <-"start a = node(50) match a-->b RETURN b"
 data <- query(q)
于 2012-09-03T18:42:56.497 回答
11

考虑 RNeo4j 驱动程序。上面显示的函数是不完整的:它不能返回单列数据,也没有 NULL 处理。

https://github.com/nicolewhite/RNeo4j

于 2014-07-23T19:56:47.083 回答
1

我尝试使用 R 脚本(非常感谢提供它),在我看来,您可以直接使用: /db/data/cypher 而不是 db/data/ext/CypherPlugin/graphdb/execute_query (使用 neo4j 2.0) .

于 2014-06-04T16:26:01.657 回答
0

不确定它是否符合您的要求,但看看 Gephi。 http://gephi.org/

于 2012-06-25T14:29:30.333 回答