如何在R資料框中統計所有唯一值的出現次數?
R中的資料框可以包含無限數量的唯一值,也可以包含許多重複值。因此,查詢資料框中所有唯一值的個數可以幫助我們瞭解資料的多樣性,但這主要在預期存在重複元素的情況下進行,否則就沒有意義。要統計所有唯一值的出現次數,我們可以使用`table`函式和`unlist`函式,如下例所示。
考慮以下資料框:
示例
x1<-sample(LETTERS[1:5],20,replace=TRUE) x2<-sample(LETTERS[1:5],20,replace=TRUE) x3<-sample(LETTERS[1:5],20,replace=TRUE) x4<-sample(LETTERS[1:5],20,replace=TRUE) x5<-sample(LETTERS[1:5],20,replace=TRUE) df1<-data.frame(x1,x2,x3,x4,x5) df1
輸出
x1 x2 x3 x4 x5 1 B E D E E 2 E A C E E 3 C A D A D 4 C C A D C 5 D D A C B 6 C C E E B 7 B B C B A 8 A E B C B 9 E D E B E 10 C B A C A 11 C C C B D 12 A B C A A 13 C D D C C 14 E C E D C 15 A A B D E 16 E D E A E 17 C C A D E 18 C C E C D 19 B B A E B 20 D B D A B
查詢資料框df1中的唯一值個數:
示例
table(unlist(df1))
輸出
A B C D E 18 27 22 17 16
讓我們來看另一個例子:
示例
y1<-sample(0:2,20,replace=TRUE) y2<-sample(0:2,20,replace=TRUE) y3<-sample(0:2,20,replace=TRUE) y4<-sample(0:2,20,replace=TRUE) df2<-data.frame(y1,y2,y3,y4) df2
輸出
y1 y2 y3 y4 1 0 2 1 2 2 0 0 1 1 3 1 1 2 1 4 2 2 0 0 5 1 0 2 1 6 0 2 2 0 7 0 0 1 1 8 0 2 0 1 9 2 2 2 2 10 1 0 2 0 11 0 1 1 2 12 2 2 2 1 13 0 1 1 0 14 2 2 1 2 15 2 2 0 0 16 2 2 1 1 17 1 2 2 2 18 2 1 0 2 19 1 0 2 0 20 1 2 0 2
查詢資料框df2中的唯一值個數:
示例
table(unlist(df2))
輸出
0 1 2 32 26 22
廣告