【发布时间】:2022-01-03 00:45:31
【问题描述】:
我是 Neo4j 的新手。我正在尝试从二部图创建单部投影。我只有两种类型的节点:
- 帖子节点(绿色):这些都是内容片段,例如推文、reddit 帖子、新闻文章等。
- 实体节点(棕色):这些是与内容关联的实体
我面临的挑战是我有几种不同的关系。一些例子:
- (e1:Entity)-[r:TWEETED]->(p:Post)->[r:AT_MENTIONED]->(e2:Entity)
- (e1:Entity)-[r:TWEETED]->(p1:Post)-->[r:QUOTE_TWEETED]->(p2:Post)
- (e1:Entity)-[r:PUBLISHED]->(p:Post)-[r:MENTIONS]->(e2:entity)
我想做的是
- 将此更改为仅具有 实体,但根据所有类型的 关系,而不仅仅是单一类型的关系和
- 根据两个实体同时出现的次数分配边权重。
换句话说,使用上面的例子:
示例 1
- 之前:(e1:Entity)-[r:TWEETED]->(p:Post)->[r:AT_MENTIONED]->(e2:Entity)
- 之后:(e1:Entity) -[r:RELATED_TO]-(e2:Entity)
示例 2
- 之前:(e1:Entity)-[r:TWEETED]->(p1:Post)-->[r:QUOTE_TWEETED]->(p2:Post)
- 之后:(e1:Entity) -[r:RELATED_TO]-(e2:Entity)
示例 3
- 之前:(e1:Entity)-[r:PUBLISHED]->(p:Post)-[r:MENTIONS]->(e2:entity)
- 之后:(e1:Entity) -[r:RELATED_TO]-(e2:entity)
我可以在网上找到示例,这些示例仅将一种类型的关系转换为单方关系,但对于具有不同类型的中间节点(即实体之间的两个 post 节点)的多个关系或关系似乎没有任何作用节点)。我已经完成了图形数据科学培训,但也找不到我想要的确切内容。
有什么建议吗?
【问题讨论】:
标签: neo4j cypher graph-databases graph-data-science