私のファイルは次のとおりです。
outlook temperature Humidity Windy PlayTennis
sunny hot high false N
sunny hot high true N
overcast hot high false P
rain mild high false P
rain cool normal false P
ファイルから一意の要素を次のように見つけました。
element:occurence
suny :2
overcast:1
rain:2
mild:1
cool:1
hot :4
normal:1
high:2
false:4
true:1
n:2
p:3
次に、出現回数が 1 未満の要素を削除しました。
出力として次のようになりました:
suny : 2
rain: 2
hot :3
high:4
false:4
n:2
p:3
今、私は出力が欲しいです(最初の出力から、他のすべての要素でループして、2つの頻繁なセットのセットを作成する必要があります)
element:occurence
sunny,hot:2
sunny,high:2
sunny,false:1
sunny,n:2
sunny,p:0
rain,hot:0
rain,high:1
rain,false:2
rain,n:0
rain,p:2
hot,high:2
hot,false:1
hot,n:2
hot,p:0
and so on..
これが私のコードです:
var occurences = File.ReadAllLines(file)
.Skip(1)
.SelectMany(l => l.Split(new []{' '},StringSplitOptions.RemoveEmptyEntries))
.GroupBy(w => w)
.ToDictionary(g => g.Key, g => g.Count());
foreach(var pair in occurences)
label1.Text += String.Format("{0}: {1}\n", pair.Key, pair.Value);
これを実装して、最初の頻繁なセットを見つけました。
2枚目はどうすればいいですか?
また、3 番目のセットを見つける必要があります。