实用函数
数值函数
从 Neo4j 5 开始,此功能也可以直接在 Cypher 中使用 Inf 、Infinity 和 NaN 字面量以及 isNaN() 函数来表达。 |
名称 | 参数 | 描述 |
---|---|---|
|
- |
返回 |
|
- |
返回 |
|
要检查是否为有限的数值。 |
如果给定参数是 ±Infinity、NaN 或 null,则返回 false。 |
|
要检查是否为无限的数值。 |
如果给定参数是 |
示例
gds.util.isFinite
gds.util.isFinite() 示例
UNWIND [1.0, gds.util.NaN(), gds.util.infinity()] AS value
RETURN gds.util.isFinite(value) AS isFinite
isFinite |
---|
true |
false |
false |
gds.util.isInfinite
gds.util.isInfinite() 示例
UNWIND [1.0, gds.util.NaN(), gds.util.infinity()] AS value
RETURN gds.util.isInfinite(value) AS isInfinite
isInfinite |
---|
false |
true |
true |
gds.util.IsFinite
和 gds.util.IsInfinite
的常见用法是过滤流式传输的结果,例如在 gds.allShortestPaths
的示例中。
节点 ID 函数
GDS 中的结果通常包含节点 ID。您可以使用以下函数将 ID 连接到图中的节点。
名称 | 参数 | 描述 |
---|---|---|
|
neo4j 图中节点的 nodeId |
返回给定节点 ID 的节点对象,如果不存在则返回 null。 |
|
neo4j 图中节点 ID 列表 |
返回给定节点 ID 的节点对象,如果不存在则返回空列表。 |
示例
以下所有示例应在空数据库中运行。 示例默认使用Cypher 投影。原生投影将在未来版本中弃用。 |
考虑通过以下 Cypher 语句创建的图
示例图
CREATE (nAlice:User {name: 'Alice'})
CREATE (nBridget:User {name: 'Bridget'})
CREATE (nCharles:User {name: 'Charles'})
CREATE (nAlice)-[:LINK]->(nBridget)
CREATE (nBridget)-[:LINK]->(nCharles)
将图投影到 GDS
MATCH (n:User)-[r:LINK]->(m:User)
RETURN gds.graph.project('socialGraph', n, m)