问题标签 [groupingby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
84 浏览

java - 分组元素,每组仅包含一个具有指定字段的对象

我在对 java 对象进行分组时遇到问题。让我们看一下示例对象:

我想要实现的是以MyObject这样一种方式对 's 进行分组,即每个组只包含一个具有指定field1值的对象。例如,对于这样的元素列表:

我想要listsWithUniqueField1Values看起来像这样:

我试图通过使用java.util.stream.Collectors.groupingBy方法以有效的方式实现它,但我失败了。

0 投票
2 回答
207 浏览

java - Java Stream Grouping by multiple fields in declarative way in single loop

我搜索了它,但我主要发现了按聚合字段分组或更改流响应的案例,但不是以下场景:

我有一堂课User,里面有字段categorymarketingChannel.

我必须以声明式的方式编写一个方法,该方法接受用户列表并根据 categorymarketingChannel单独计算用户(即不是groupingBy(... ,groupingBy(..)))。

我无法在一个循环中做到这一点。这是我必须达到的。

我编写了几个方法如下:

该方法declerativeMultipleLoop是声明性的,但每个字段都有一个单独的循环。复杂性:O(noOfFields * 用户数)

问题出在declerativeMultipleColumn方法中,因为我最终编写了命令式代码和多个循环。

我想以完全声明性和尽可能高效的方式编写上述方法。即复杂性:O(用户数)

样本输出:

命令式
{business=2, student=2}
{direct=1, google=2, bing=1}
declerativeMultipleLoop
{business=2, student=2}
{direct=1, google=2, bing=1}
declerativeMultipleColumn
groupingBy category and marketChannel
{business={direct=1, google=1}, student={google=1, bing=1}}
在上面的 Implerative Loop 之后。
{企业=2,学生=2}
{直接=1,谷歌=2,必应=1}

0 投票
3 回答
97 浏览

java - Java 收集器分组依据

我有一个整数输入,我想在所有奇数之前按升序对所有偶数进行排序,并保留赔率顺序。我很确定我可以通过收集器和/或下游收集器实现这一目标,但我不知道该怎么做。我想知道如何对错误列表进行排序,因此如果可能的话,我可以在一行中实现它。因此,在分组之后,我希望将错误列表按升序排序,而另一个(真实赔率列表)保持不变,并且在此转换之后能够将它们平面映射到一个列表中。

例子:

输入是:

上面代码的输出是:

这行条目应变为:

转换后。

输出应该是先于赔率的偶数,并按升序排序,同时保持赔率的顺序,如下所示:

0 投票
1 回答
175 浏览

java - 如何在嵌套列表中使用 groupingBy

我面临一个棘手的情况,我必须在具有嵌套列表的对象上使用 groupingBy。我用 map()、flatmap()、toMap() 尝试了一些东西,但无法提出解决方案,只能绕圈子。非常感谢流专家的任何帮助。我需要在我的 OrdersAnalyzer 类中实现 2 个方法。这是我的对象的样子:

0 投票
1 回答
110 浏览

r - 分组数据的卡方检验,除了 r 中缺失值的某些组

我有这个数据:

看起来像这样:

在此处输入图像描述

我正在尝试使用分组数据进行 chisq 测试,以分析关于“fisiopatología más frecuente”的“neurogastro”和“no neurogastro”之间是否存在统计学上的显着差异。

正如在dplyr 中使用分组数据发表的卡方检验

我努力了

但我得到一个错误,我猜是因为没有用于神经胃的“Uso de fármacos”。我的方法可以吗?除了缺少的那一组之外,我如何对其余组进行测试?

谢谢!

0 投票
1 回答
121 浏览

java - 如何使用带有对象列表的 java 8 流获取一些统计信息

我有一个List<SqlResult>. 我需要List<Result>从 SqlResult 的聚合中得到一个。例如,

SqlResult(输入)

结果数据类

我想得到下面的列表,用key1、key2、成员计数(count)、val(avgVal)的平均值分组下面的代码抛出NullPointerException。

如何使用 Java Stream API 获得统计结果(val 平均值、成员计数)?

0 投票
2 回答
92 浏览

java - 可以将java流分组返回到这个数组变量吗?

Q.1)你好,java流的groupingby可以使自己的数组变数吗?

这是实体

这是测试列表样本

我想按 test.id 分组,例如

我该怎么办?

Q.2) 我如何合并下面的两个流代码?

对这个..?

Q3) Q1、Q2 的流代码比 java 'for' 语法性能更好?

先感谢您。:)

0 投票
0 回答
29 浏览

java - 按具有空键的两个字段进行流分组

众所周知,Java Stream groupingBy不允许空键。对于这种情况,有一个解决方案,它允许按空键分组:

但是groupingBy也有一个签名,它不仅允许传递函数,还允许传递另一个收集器:

在这种情况下我应该如何允许空键?

0 投票
3 回答
78 浏览

java - 如何使用 JAVA 8 对不同类型列表的字段进行分组?

这里是同时也是学校老师的博士生。这两个对象之间的共同点是它们的名称。所以我用他们的名字过滤数据。直到我在下面的 MyMain 类中编写的代码,我能够过滤公共记录并获取学生数据。但我也想要学生和教师的详细信息,并在 StudentTeacherMapper 中设置。请帮我在 StudentTeacherMapper 类中设置字段。谢谢你。

0 投票
1 回答
135 浏览

java - Java 8 Map按orderid分组并按itemLeastDate排序

我希望数据库记录列表是 groupby orderId 并按 itemDate 排序。

我以任何顺序从数据库中获取记录。相同的 OrderId 的记录会以不同的顺序出现。

我只需要首先返回按最少项目日期排序的最高记录。不需要相同订单 ID 的第二条记录。

POJO

DAO层会返回itemDetails列表,即List itemDetails;

从 itemDetails 列表中,我必须在地图中设置键值,如下面的代码,

我需要将键存储为字符串中的 OrderId-ItemNumber 组合,值存储为 ItemDetail 对象

最后地图应该只返回这样的记录

简单来说,我需要按 orderId-itemNumber 分组,按项目日期排序,只返回最少日期记录。不要删除相同订单编号的唯一商品编号记录。如何在 Java 8 中做到这一点?

录一张。12345 不是唯一的。所以删除最高日期的第二条记录。需要保留唯一记录并按项目日期删除重复项。

所以只有我想将密钥保留为 orderId-itemNumber