如何在R資料框中查詢因子列的頻數表?


如果我們在R資料框中擁有因子列,那麼我們想要查詢所有因子列中每個因子水平的頻率。這可以使用`sapply`函式和`table`函式來完成。例如,如果我們有一個名為`df`的資料框包含一些因子列,那麼可以使用命令`sapply(df,table)`建立因子列的頻數表。

示例1

考慮以下資料框:

線上演示

> x1<-sample(LETTERS[1:4],20,replace=TRUE)
> x2<-sample(letters[1:4],20,replace=TRUE)
> df1<-data.frame(x1,x2)
> df1

輸出

   x1 x2
1  D  a
2  D  b
3  D  c
4  D  b
5  D  c
6  C  a
7  C  a
8  B  a
9  A  a
10 C  c
11 D  a
12 D  b
13 D  b
14 A  c
15 C  b
16 D  a
17 A  b
18 A  b
19 B  c
20 C  b

在df1中查詢因子列的頻數表:

> sapply(df1,table)
$x1

輸出

A B C D
4 2 5 9

示例

$x2

輸出

a b c
7 8 5

示例2

線上演示

> y1<-sample(c("India","Russia","UK"),20,replace=TRUE)
> y2<-sample(c("Male","Female"),20,replace=TRUE)
> df2<-data.frame(y1,y2)
> df2

輸出

    y1      y2
1  India    Male
2  UK     Female
3  Russia   Male
4  India  Female
5  India  Female
6  India    Male
7  UK     Female
8  Russia   Male
9  UK       Male
10 India    Male
11 Russia   Male
12 UK       Male
13 UK     Female
14 India  Female
15 India  Female
16 Russia Female
17 Russia Female
18 Russia Female
19 India  Female
20 India  Female

在df2中查詢因子列的頻數表:

> sapply(df2,table)
$y1

輸出

India Russia UK
  9     6    5

示例

$y2

輸出

Female Male
  12    8

更新於:2021年3月5日

681 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.