问题描述
(p: Person)-[r: review {rating}]->(m: Movie)
我想根据 GDS Node Similarity 的示例创建一个图表,我使用这个:
CALL gds.graph.create(
'myGraph',['Person','Movie'],{
review: {
type: 'review',properties: {
rating: {
property: 'rating',defaultValue: 1.0
}
}
}
}
);
当我尝试这个时,我得到了下一个异常:
Failed to invoke procedure `gds.graph.create`: Caused by: java.lang.IllegalArgumentException: Unsupported type [TEXT] of value String("4"). Please use a numeric property.
我在日志中找不到任何有用的信息,为什么会出现此异常。对我做错了什么有任何想法吗?
解决方法
问题在于“rating”属性存储为字符串。您可以先将其转换为浮点数,然后运行完全相同的 GDS 查询。
因此,首先将 rating 属性转换为浮点数:
MATCH ()-[r:review]->()
SET r.rating = toFloat(r.rating)
现在重新运行相同的 GDS 查询,它应该可以工作了。