分组和计数项目

5 linq

我有一个.csv文件(words.csv),包含由逗号分隔的5000个单词.大多数字符串都是重复值.

我可以使用LINQ执行以下操作:

A.将常用词组合在一起并显示重复词的计数

所以,如果苹果重复5次,香蕉重复3次,则应显示为

苹果 - 5
香蕉 - 3等

B.创建另一个删除了重复项的文本文件.

Dre*_*rsh 6

当然,这是C#中的LINQ语法:

from word in words
group word into occurrences
select new
{
    Word = occurrences.Key,
    Count = occurrences.Count()
}
Run Code Online (Sandbox Code Playgroud)

或者在"纯粹的"C#方法调用中:

words.GroupBy(w => w)
     .Select(o => new 
                  { 
                     Word = o.Key,
                     Count = o.Count()
                  });
Run Code Online (Sandbox Code Playgroud)

要创建一个独特的单词列表,您只需使用Distinct运算符:

words.Distinct();
Run Code Online (Sandbox Code Playgroud)


Shi*_*iji 1

Linq 中有一个您可以使用的独特关键字。

http://www.shawson.co.uk/codeblog/linq-distinct/