如何在 R 資料框中建立包含兩個因子列的表格?


要在一個 R 資料框中建立包含兩個因子列的表格,我們可以使用 table 函式和 with 函式。

例如,如果我們有一個名為 df 的資料框,其中包含兩個因子列,例如 F1 和 F2,那麼我們可以使用以下命令建立這兩個列的表格:

with(df,table(F1,F2))

示例 1

以下程式碼片段建立了一個示例資料框:

Group<-sample(c("G1","G2","G3"),20,replace=TRUE)
Class<-sample(c("First","Second","Third"),20,replace=TRUE)
df1<-data.frame(Group,Class)
df1

建立了以下資料框

Group Class
1  G1 First
2  G2 First
3  G3 First
4  G2 First
5  G1 Second
6  G2 Second
7  G3 Second
8  G3 Third
9  G2 First
10 G1 Third
11 G1 Second
12 G3 Second
13 G1 Second
14 G1 Third
15 G2 Second
16 G1 Second
17 G3 Third
18 G1 Second
19 G3 First
20 G1 Third

要對上面建立的資料框中的 Group 和 Class 列建立表格,請將以下程式碼新增到上面的程式碼片段中:

Group<-sample(c("G1","G2","G3"),20,replace=TRUE)
Class<-sample(c("First","Second","Third"),20,replace=TRUE)
df1<-data.frame(Group,Class)
with(df1,table(Group,Class))

輸出

如果您將上面給出的所有程式碼片段作為單個程式執行,它將生成以下輸出:

Class
Group First Second Third
  G1   1     5      3
  G2   3     2      0
  G3   2     2      2

示例 2

以下程式碼片段建立了一個示例資料框:

Gender<-sample(c("Male","Female"),20,replace=TRUE)
Sal_Group<-sample(c("<=10K","10K and <=20K","=20K"),20,replace=TRUE)
df2<-data.frame(Gender,Sal_Group)
df2

建立了以下資料框

 Gender      Sal_Group
1  Male            =20K
2  Male           <=10K
3  Female         <=10K
4  Male   10K and <=20K
5  Male           <=10K
6  Female         <=10K
7  Female 10K and <=20K
8  Female 10K and <=20K
9  Female          =20K
10 Male            =20K
11 Female 10K and <=20K
12 Male           <=10K
13 Male            =20K
14 Male            =20K
15 Female 10K and <=20K
16 Male   10K and <=20K
17 Female         <=10K
18 Female         <=10K
19 Male            =20K
20 Female 10K and <=20K

要對上面建立的資料框中的 Gender 和 Sal_Group 列建立表格,請將以下程式碼新增到上面的程式碼片段中:

Gender<-sample(c("Male","Female"),20,replace=TRUE)
Sal_Group<-sample(c("<=10K","10K and <=20K","=20K"),20,replace=TRUE)
df2<-data.frame(Gender,Sal_Group)
with(df2,table(Gender,Sal_Group))

輸出

如果您將上面給出的所有程式碼片段作為單個程式執行,它將生成以下輸出:

       Sal_Group
Gender <=10K  =20K  10K and <=20K
Female    4     1       5
Male      3     5       2

示例 3

以下程式碼片段建立了一個示例資料框:

Category<-sample(c("C1","C2","C3","C4"),20,replace=TRUE)
Sample<-sample(1:4,20,replace=TRUE)
df3<-data.frame(Category,Sample)
df3

建立了以下資料框

Category Sample
1  C4    4
2  C2    3
3  C2    3
4  C1    3
5  C3    4
6  C1    4
7  C2    1
8  C1    1
9  C1    1
10 C1    2
11 C4    3
12 C1    3
13 C4    2
14 C1    3
15 C4    2
16 C3    4
17 C1    3
18 C2    4
19 C1    2
20 C1    2

要對上面建立的資料框中的 Category 和 Sample 列建立表格,請將以下程式碼新增到上面的程式碼片段中:

Category<-sample(c("C1","C2","C3","C4"),20,replace=TRUE)
Sample<-sample(1:4,20,replace=TRUE)
df3<-data.frame(Category,Sample)
with(df3,table(Category,Sample))

輸出

如果您將上面給出的所有程式碼片段作為單個程式執行,它將生成以下輸出:

     Sample
Category 1 2 3 4
      C1 2 3 4 1
      C2 1 0 2 1
      C3 0 0 0 2
      C4 0 2 1 1

更新於: 2021年11月3日

5K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.