这是我认为是一个非常简单的问题。我试图重新此页上的图(向下滚动了一下):使用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,但它似乎没有什么区别。 –