2012-07-01 23 views
3

我有一些數據,我需要做一些統計數據。我需要按年齡分組用戶。集團用戶的年齡爲一系列

var byAge = displayResult.GroupBy(x => x.Age); 

我可以像上面那樣做。然而,這給了我像19,20,21等。我想按10年年齡分組,如

什麼 10-20 yearsold之間

用戶,20-30歲,30-40歲等年齡

我怎樣才能得到呢?

+0

那些年齡重疊(在10,20,30等) –

回答

5

您可以通過使用整數除法除以10,然後十乘以回截斷尾隨數字。

var byAge = displayResult.GroupBy(x => 10*(x.Age/10)); 

之間人人0,包容,和10中,排他的,將在從桶10 0 到20將根據鍵10,從20到30 - 下鍵20,等。

+0

單獨的除法就足夠了。 –

+3

@JeffMercado當然,但隨後該組的關鍵需要十乘後面,想找出哪個原始時代所屬的範圍。我認爲在分組之前將密鑰乘以十來更直觀。 – dasblinkenlight

+0

啊對,我更關心分組,而不是關於密鑰。 –