這是我認爲是一個非常簡單的問題。我試圖重新此頁上的圖(向下滾動了一下):使用py2neo從CSV文件創建圖形的正確語法
https://linkurio.us/visualizing-network-donald-trump/
有代碼此頁面上創建圖形,但我想用py2neo等同。我已經使用類似於下面的代碼的語法在NetworkX中成功創建了這些相同的圖表,但下面的代碼生成了一些完全不同的代碼。我希望得到的代碼能夠從CSV文件中以適當的py2neo形式創建適當的圖形。請注意,我已經搜索了答案,並且我已經查看了此鏈接,並且不確定我遵循:Creating neo4j graph database from csv file using py2neo。
下面的代碼工作正常(否則),我使用py2neo和Neo4j(CE)的最新版本。我更喜歡簡單的代碼(生成器,列表解析等,可能不是最好的),但會採取我能得到的任何東西。很顯然,我正在閱讀一個CSV文件,讀出名爲「組織」,「人員」和「連接」的列,並使用這些值創建顯示連接的圖形,如上述鏈接。謝謝!我使用
代碼:
def readCSV_forNeo4j_Trump(path):
with open(path + '/Trump/TrumpWorldData_Person-Org.csv', ncoding='utf8') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
Organization = row['Organization']
Person = row['Person']
Connection = row['Connection']
Person_Node = Node("Person", name=Person)
graph.create(Person_Node)
Org_Node = Node("Organization", name=Organization)
graph.create(Org_Node)
Person_Org = Relationship(Person_Node, Connection, Org_Node)
graph.create(Person_Org)
謝謝,托馬斯,做到了。一個注意,py2neo 3沒有密碼構造函數。而不是使用cypher = graph.cypher,然後cypher.execute(與py2neo 2一樣),只需調用graph.run()(不需要實例化一個密碼對象,再次感謝! – starconsult
謝謝你。注意到它很慢,有什麼辦法可以加快速度嗎?我嘗試了graph.schema.create_index,但它似乎沒有什麼區別。 –