Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用cypher在neo4j中获得一些大于平均值的值?_Python_Neo4j_Cypher - Fatal编程技术网

Python 如何使用cypher在neo4j中获得一些大于平均值的值?

Python 如何使用cypher在neo4j中获得一些大于平均值的值?,python,neo4j,cypher,Python,Neo4j,Cypher,我想为我现有的neo4j图形数据库分配一个决策树。我必须创建一个决策树,告诉我价格是便宜还是贵。为了做到这一点,我将“便宜”定义为低于平均价格,将“昂贵”定义为高于平均价格。我在cypher中尝试了以下代码,但不起作用 我还想做出其他不同的决定,但这是最简单的一个。另外,另一件事是我是否可以在一些python代码上实现决策树,并将其连接到现有的neo4j数据库 MAtch (p:Price),(ch:Cheap) WITH avg(toFloat(p.monthly)) as average

我想为我现有的neo4j图形数据库分配一个决策树。我必须创建一个决策树,告诉我价格是便宜还是贵。为了做到这一点,我将“便宜”定义为低于平均价格,将“昂贵”定义为高于平均价格。我在cypher中尝试了以下代码,但不起作用

我还想做出其他不同的决定,但这是最简单的一个。另外,另一件事是我是否可以在一些python代码上实现决策树,并将其连接到现有的neo4j数据库

MAtch (p:Price),(ch:Cheap)

WITH avg(toFloat(p.monthly)) as average

Where ch.price <  average

MERGE (p)-[:IS_CHEAP]->(ch)
匹配(p:价格),(ch:便宜)
以平均值(toFloat(p.monthly))作为平均值
其中ch.price<平均值
合并(p)-[:是廉价的]->(ch)

我希望在具有值(Price)的节点和决策树上的另一个节点(Cheap)之间创建一个关系,该节点通过取低于平均值的Price值来定义。

从您的查询中不清楚哪些属性具有Price值。 我假设每月的财产有价格节点的价格

您可以首先查找平均价格,然后使用相同的平均值查找价格低于该值的价格节点:

// Find Average Price
MATCH (p:Price)
WITH avg(toFloat(p.monthly)) as average
// Find Price nodes with price less than average
MATCH (p:Price), (ch:Cheap)
WHERE p.monthly < average

MERGE (p)-[:IS_CHEAP]->(ch)
//查找平均价格
匹配(p:价格)
以平均值(toFloat(p.monthly))作为平均值
//查找价格低于平均值的价格节点
匹配(p:价格),(ch:便宜)
其中p.月<平均值
合并(p)-[:是廉价的]->(ch)

从您的查询中不清楚什么房产具有价格价值。 我假设每月的财产有价格节点的价格

您可以首先查找平均价格,然后使用相同的平均值查找价格低于该值的价格节点:

// Find Average Price
MATCH (p:Price)
WITH avg(toFloat(p.monthly)) as average
// Find Price nodes with price less than average
MATCH (p:Price), (ch:Cheap)
WHERE p.monthly < average

MERGE (p)-[:IS_CHEAP]->(ch)
//查找平均价格
匹配(p:价格)
以平均值(toFloat(p.monthly))作为平均值
//查找价格低于平均值的价格节点
匹配(p:价格),(ch:便宜)
其中p.月<平均值
合并(p)-[:是廉价的]->(ch)

您的第二个问题是如何通过python脚本连接到图形,然后执行该查询?@JohnS否我知道如何将其与bolt和所有内容连接起来,但我想知道是否有方法获得大于平均值的cypher值,并将其分配给另一个节点作为决策树的决策节点?您可以拆分两个查询中的两个任务:1。找到平均值并创建节点2。查找值低于该节点的节点。数据库中是否已存在廉价节点?@Raj是的,我已经有一个决策树,其中已存在此廉价节点。但是,在运行上述查询以获得平均值并创建价格低于平均值的产品与决策树中廉价节点之间的关系时,它给了我错误。这是关于如何通过python脚本连接到图形,然后执行该查询的第二个问题?@JohnS不,我知道如何连接它使用bolt和其他工具,但我想知道是否有办法在cypher中获得大于平均值的值,并将其分配给另一个节点作为决策树的决策节点?您可以在两个查询中拆分这两个任务:1。找到平均值并创建节点2。查找值低于该节点的节点。数据库中是否已存在廉价节点?@Raj是的,我已经有一个决策树,其中已存在此廉价节点。但是,在运行上述查询时,为了获得平均值并创建价格低于平均值的产品与决策树中的廉价节点之间的关系,它会给我带来错误。想法是这样的:我有一个节点价格,每月是产品的每月价格。现在我想做的是实现决策树,根据一些输入获取便宜或昂贵的产品。我创建了一个决策树,其中有一个节点便宜,一个节点昂贵(如果不便宜的话)。现在我将便宜定义为低于月平均价格,我想得到那些月价格便宜的产品,并将它们链接到决策树上的便宜节点。就这些!!不,实际上不起作用,因为我想把一个决策图连接到一个现有的图上,我想找到价格低于平均价格的产品。我添加了一张图片,为了更清楚,你可以在上面找到。这个想法是这样的:我有一个节点价格,每月是产品的每月价格。现在我想做的是实现决策树,根据一些输入获取便宜或昂贵的产品。我创建了一个决策树,其中有一个节点便宜,一个节点昂贵(如果不便宜的话)。现在我将便宜定义为低于月平均价格,我想得到那些月价格便宜的产品,并将它们链接到决策树上的便宜节点。就这些!!不,实际上不起作用,因为我想把一个决策图连接到我现有的一个图上,并且能够找到价格低于平均价格的产品。我添加了一张图片,为了更清楚,你可以在上面找到它