List 按元组的第一个元素将元组列表分组
假设我有一个元组列表,它由List 按元组的第一个元素将元组列表分组,list,haskell,tuples,grouping,List,Haskell,Tuples,Grouping,假设我有一个元组列表,它由[(“ab”,1),(“ab”,2),(“ac”,3)] 使用group函数将此列表拆分为元组列表,如下所示: [ [("ab", 1)], [("ab", 2)], [("ac", 3)] ] 忽略其中一个索引,如何对元组进行分组,以便根据其中一个元素对元组进行分组: [ [("ab", 1), ("ab", 2)], [("ac", 3] ] 在这种情况下是否需要groupBy函数?使用数据。列出groupBy函数(): 或者按照@dfeue
[(“ab”,1),(“ab”,2),(“ac”,3)]
使用group
函数将此列表拆分为元组列表,如下所示:
[
[("ab", 1)],
[("ab", 2)],
[("ac", 3)]
]
忽略其中一个索引,如何对元组进行分组,以便根据其中一个元素对元组进行分组:
[
[("ab", 1), ("ab", 2)],
[("ac", 3]
]
在这种情况下是否需要
groupBy
函数?使用数据。列出groupBy
函数():
或者按照@dfeuer的建议:
...
import Data.Function
groupBy ((==) `on` fst) xs
您是否尝试过在'fst'上使用groupBy
?groupBy((==)`on`fst)
Nice simplification@dfeuer。更新了我的答案
...
import Data.Function
groupBy ((==) `on` fst) xs