R 中的 table()函式

Sheeraz Gul 2022年7月18日
R 中的 table()函式

table() 方法用於分類表示資料。本教程演示如何在 R 中使用 table() 方法。

R 中的 table() 函式

如果要分類顯示資料,可以使用 table() 方法來實現。這種分類表示是使用給定的變數名稱和表格形式的頻率完成的。

此方法的語法是:

table(x)

在此語法中,x 是將轉換為表格的物件。

讓我們嘗試使用 table() 方法從資料幀建立頻率表:

# create a dataframe
Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))


#view data frame
Delftstack


#Create frequency table for LastName column
table(Delftstack$LastName)

上面的程式碼將為 Delftstack 資料幀的 LastName 列建立一個頻率表。見輸出:

      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

    Cena Chandler  Danials   McCool    Nitro
       1        1        1        1        1

同樣,我們可以使用 prop.table()table() 方法為同一列建立比例頻率表。讓我們嘗試一個例子:

#calculate frequency table of proportions for LastName Column
prop.table(table(Delftstack$LastName))

上面的程式碼將為給定的列或變數建立比例頻率表。見輸出:

    Cena Chandler  Danials   McCool    Nitro
     0.2      0.2      0.2      0.2      0.2

上面的資料顯示,每個姓氏被賦予資料框中 20% 的人。同樣,我們可以計算兩個變數的頻率表。

參見示例:

#Create frequency table for Name and LastName column
table(Delftstack$Name, Delftstack$LastName)

上面的程式碼將為 NameLastName 列建立頻率表。見輸出:

           Cena Chandler Danials McCool Nitro
  Jack        0        0       1      0     0
  Jhonny      0        0       0      0     1
  John        1        0       0      0     0
  Michelle    0        0       0      1     0
  Mike        0        1       0      0     0

上面的程式碼將 Name 匹配到 LastName;例如,對於 JackDanials 是姓氏,因為它的頻率為 1。類似地,我們可以為兩個變數建立比例頻率表。

參見示例:

#calculate frequency table of proportions for Name and LastName Column
prop.table(table(Delftstack$Name, Delftstack$LastName))

上面的程式碼將計算兩列 NameLastName 的頻率比例表。見輸出:

           Cena Chandler Danials McCool Nitro
  Jack      0.0      0.0     0.2    0.0   0.0
  Jhonny    0.0      0.0     0.0    0.0   0.2
  John      0.2      0.0     0.0    0.0   0.0
  Michelle  0.0      0.0     0.0    0.2   0.0
  Mike      0.0      0.2     0.0    0.0   0.0

這是計算單個和多個變數或列的頻率表和比例頻率表的完整程式碼。

# create a dataframe
Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))


#view data frame
Delftstack


#Create frequency table for LastName column
table(Delftstack$LastName)

#calculate frequency table of proportions for LastName Column
prop.table(table(Delftstack$LastName))

#Create frequency table for Name and LastName column
table(Delftstack$Name, Delftstack$LastName)

#calculate frequency table of proportions for Name and LastName Column
prop.table(table(Delftstack$Name, Delftstack$LastName))
Author: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

相關文章 - R Function