我有一个列表(原始列表)类型MyType的元素。我的类型是:
MyType
{
long IDReferenceElement;
long IDElement;
string value;
}
因此,我想在列表中单独列出每组元素,其中每组元素都具有相同的IDRISULECEElement。
例如,一个列表列表,主列表的每个列表只包含同一组的元素。
List<List<MyType>>
例如,我有一个包含以下元素的原始列表:
我想得到三个列表:
列表1和项目:-Item1(1,1,1);-第2项(1,2,2);-第3项(1,3,3);
清单2:-第4项(2,4,4);-第5项(2,5,5);-第6项(2,6,6);
清单3:-第7项(3,7,7);-第8项(3,8,8);-第9项(3,9,9);
为了得到它,我正在尝试这样的东西:
List<List>> myResultList = myOriginalList.GroupBy(x=>x.IDReferenceElement).ToList();
它不起作用,因为组元素不是列表。我想知道如何访问分组中的每一组,并隐藏到列表中。
非常感谢。
另一种方法是使用查找
var myResultsLookup = myOriginalList.ToLookup(myType => myType.IDReferenceElement);
现在,可以使用IDReferenceElement值作为键来访问数据的每个子集
var results = myResultsLookup[1];
使用您的测试数据,结果将包含元素(1,1,“1”)、(1,2,“2”)和(1,3,“3”)
List<List<MyType>> myResultList =
myOriginalList.GroupBy(x=>x.IDReferenceElement)
.Select(gr=>gr.ToList()) // convert each group into List
.ToList();
我有: 我想要: 似乎在scala中我可以写:< code>df.select($"value。_1 ",$ "值。_2 ",$ "值。_3"),但这在python中是不可能的。 那么有没有好的办法呢?
问题内容: 我有大量的这种格式的元组列表。每个元组的第二个字段是类别字段。 将其分解为相同类别(A,B,C等)的子列表的最有效方法是什么? 问题答案: 使用itertools.groupby: 产量 或者,要创建一个将每个组作为子列表的列表,可以使用列表理解: to的第二个参数是一个适用于(第一个参数)中每个项目的函数。预期会传回。然后将相同的所有连续项目组合在一起。 operator.itemg
我想要一个类似于scala分组函数的东西。基本上,一次选择两个元素并处理它们。以下是相同的参考: 将列表拆分为具有固定元素数量的多个列表 Lambda确实提供了诸如groupingBy和partitioningBy之类的东西,但它们似乎都没有与Scala中的分组函数相同。任何指示将不胜感激。
问题内容: 我有很多对象,我需要将它们分成两个组成一组,以供UI助手使用。 例: 通过这四个数组成为一个数组 有很多分割数组的方法。但是,如果阵列很大,什么是最有效的(成本最低)。 问题答案: 如果您正在寻找效率,则可以使用一种方法来懒散地生成每个包含2个元素的数组,因此您一次只能在内存中存储2个元素: 此方法适用于任何Array,而不仅限于Arrays。 对于Swift 1,没有协议扩展,您将拥
我有一个非常简单的,其中每个单元格都包含一个列表。我想将列表中的每个元素拆分为它自己的列。我可以通过导出值,然后创建一个新的
问题内容: 假设我有一个元组列表,并且我想转换为多个列表。 例如,元组列表是 Python中是否有任何内置函数可以将其转换为: 这可以是一个简单的程序。但是我只是对Python中存在这种内置函数感到好奇。 问题答案: 内置功能几乎可以满足您的需求: 唯一的区别是您得到元组而不是列表。您可以使用将它们转换为列表