如何获取序列中出现次数最多的元素的值?
How to get the value of the element with the maximum number of occurrences in the sequence?
我有两个问题。
- 如何获取序列中条目数最大的元素
- 如何获取entry元素的序号?
我有代码:
return apoc.coll.duplicatesWithCount([1, 2, 3, 4, 5, 6, 6, 6, 7, 7])
使用代码我得到了结果:
[
{
"item": 6,
"count": 3
},
{
"item": 7,
"count": 2
}
]
但我想要下一个结果:
6
或在这样的数据上:[1]
返回:1
apoc.coll.duplicatesWithCount 只会考虑重复项,不会获取没有重复项的列表的结果。它不适用于您提到的第二个示例 - Or on such data:[1] Returned: 1
.
使用 apoc.coll.frequencies 和 UNWIND apoc 调用的输出,按计数排序并只获取第一行。
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) AS output
RETURN output ORDER BY output.count DESC SKIP 0 LIMIT 1
由于结果是一张地图,您可以拆分元素并计数:
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) AS output
RETURN output.item AS `Max Count Element`, output.count AS `Max Count` ORDER BY output.count DESC SKIP 0 LIMIT 1
或者只是元素:
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) 作为输出
RETURN output.item AS Max Count Element
ORDER BY output.count DESC SKIP 0 LIMIT 1
SKIP 在此用例中是不必要的。但是您可以结合使用 SKIP 和 LIMIT 来创建光标并在 second-highest 频率、第三高频率等之间移动...
我有两个问题。
- 如何获取序列中条目数最大的元素
- 如何获取entry元素的序号?
我有代码:
return apoc.coll.duplicatesWithCount([1, 2, 3, 4, 5, 6, 6, 6, 7, 7])
使用代码我得到了结果:
[
{
"item": 6,
"count": 3
},
{
"item": 7,
"count": 2
}
]
但我想要下一个结果:
6
或在这样的数据上:[1]
返回:1
apoc.coll.duplicatesWithCount 只会考虑重复项,不会获取没有重复项的列表的结果。它不适用于您提到的第二个示例 - Or on such data:[1] Returned: 1
.
使用 apoc.coll.frequencies 和 UNWIND apoc 调用的输出,按计数排序并只获取第一行。
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) AS output
RETURN output ORDER BY output.count DESC SKIP 0 LIMIT 1
由于结果是一张地图,您可以拆分元素并计数:
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) AS output
RETURN output.item AS `Max Count Element`, output.count AS `Max Count` ORDER BY output.count DESC SKIP 0 LIMIT 1
或者只是元素:
UNWIND apoc.coll.frequencies([1, 2, 3, 4, 5, 6, 6, 6, 7, 7]) 作为输出
RETURN output.item AS Max Count Element
ORDER BY output.count DESC SKIP 0 LIMIT 1
SKIP 在此用例中是不必要的。但是您可以结合使用 SKIP 和 LIMIT 来创建光标并在 second-highest 频率、第三高频率等之间移动...