簡體   English   中英

從Neo4j到R控制台作為數據框檢索節點和關系

[英]Retrieving nodes and relationships from neo4j to R console as Dataframe

我已經使用neo4j創建了圖形數據庫,並且我正嘗試從R中檢索一些結果。 但是,相同的“ GeneName”節點具有許多連接,如所附的圖像所示(來自Neo4J)。 因此,是否有可能在R控制台上將GeneName節點的所有連接作為數據框獲取。

更詳細的信息:

我從一個文件中獲取了基因信息,並從另一個文件中考慮了所附屏幕快照中GeneName節點周圍的連接。 我已經寫了密碼來根據所有文件中的通用基因名稱連接各種文件。 例如

文件A(4列多行)

SCA1信息1信息2信息3

文件B(4列多行)

info5 info7 info8 info10 SCA1

現在,我以基於GeneName(SCA1)的方式將兩個文件連接起來,從而編寫了一個密碼查詢

連接兩個文件后的輸出將像

SCA1信息1信息2信息3信息5信息7信息8信息10

因此,在屏幕截圖中,每個GeneName節點都連接到info1 info2 info3 info5 info7 info8 info10

Pavan Kumar Alluri高級項目工程師C-DAC KP印度

![在此處輸入圖片描述] [1]

https://www.dropbox.com/s/3cwtskbd803cqjr/NIcole.png?dl=0

您可以嘗試一些方法:

ca1 = getSingleNode(graph, "MATCH (n:GeneName) WHERE n.name = 'CA1' RETURN n")
r = outgoingRels(ca1)

r是關系對象的列表。 您可以在這些節點上使用endNode和startNode。

lapply(r, startNode)
lapply(r, endNode)

要么:

r = getRels(graph, "MATCH (n:GeneName)-[r]->() WHERE n.name = 'CA1' RETURN r")

這還將獲得一個關系對象列表,您可以在該對象上使用apply系列函數以及endNode和startNode。

您還可以使用路徑對象:

query = "
MATCH p = (n:GeneName)-->()
WHERE n.name = 'CA1'
RETURN p
"

p = getPaths(graph, query)
n = lapply(p, nodes)

當然,沒有任何數據可重現您的圖形,我無法確定哪種方法最好。 我強烈建議您閱讀文檔和示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM