R语言 从DataFrame中创建表格
在这篇文章中,我们将讨论如何在R编程语言中从给定的数据框架中创建一个表格。
使用的函数
table():这个函数是进行交互式数据分析的一个基本函数。因为它可以简单地创建分类变量的表格结果。
语法 :table(..., exclude = if (useNA == "no") c(NA, NaN),useNA = c("no", "ifany", "always"), dnn = list.names(...) , deparse.level = 1)
返回 :它将返回带有条件和交叉分析的频率表。
例1:用R语言创建给定数据框的频率表:-
在这个例子中,我们将使用R语言中的table()函数在R语言中建立一个简单的频率表。这个表只是提供数据框中元素的频率。
gfg_data <- data.frame(
Country = c("France","Spain","Germany","Spain","Germany",
"France","Spain","France","Germany","France"),
age = c(44,27,30,38,40,35,52,48,45,37),
salary = c(6000,5000,7000,4000,8000),
Purchased=c("No","Yes","No","No","Yes",
"Yes","No","Yes","No","Yes"))
gfg_table<-table(gfg_data$Country)
gfg_table
输出
France Germany Spain
4 3 3
例2:用R语言创建一个带有给定数据框比例的频率表
在这里,我们将使用 prop.table() 函数,它的工作原理与简单的table()函数很相似,可以从给定的数据框中获得带有比例的频率表。
gfg_data <- data.frame(
Country = c("France","Spain","Germany","Spain","Germany",
"France","Spain","France","Germany","France"),
age = c(44,27,30,38,40,35,52,48,45,37),
salary = c(6000,5000,7000,4000,8000),
Purchased=c("No","Yes","No","No","Yes","Yes",
"No","Yes","No","Yes"))
gfg_table = as.table(table(gfg_data$Country))
prop.table(gfg_table)
输出
France Germany Spain
0.4 0.3 0.3
例3:用R语言从给定的数据框中创建一个带条件的频率表 。
在这个例子中,我们将用R语言中的table()函数建立一个简单的频率表,里面有一个条件作为R语言的函数参数。这个表只是提供数据框中符合函数中给定条件的元素的频率。
在这里,我们将使用R语言中的table()函数,从数据框架中制作一个薪金列的频率表,条件是薪金大于6000。
gfg_data <- data.frame(
Country = c("France","Spain","Germany","Spain","Germany",
"France","Spain","France","Germany","France"),
age = c(44,27,30,38,40,35,52,48,45,37),
salary = c(6000,5000,7000,4000,8000),
Purchased=c("No","Yes","No","No","Yes","Yes",
"No","Yes","No","Yes"))
gfg_table =table(gfg_data$salary>6000)
gfg_table
输出
FALSE TRUE
6 4
例4:用R语言从给定的数据框中创建一个2-way cross table
在这个例子中,我们将使用R语言中的table()函数建立一个简单的2-way cross table。这个表只是提供数据框架中不同列的元素的频率。
gfg_data <- data.frame(
Country = c("France","Spain","Germany","Spain","Germany",
"France","Spain","France","Germany","France"),
age = c(44,27,30,38,40,35,52,48,45,37),
salary = c(6000,5000,7000,4000,8000),
Purchased=c("No","Yes","No","No","Yes","Yes",
"No","Yes","No","Yes"))
gfg_table =table(gfg_datasalary,gfg_dataCountry)
gfg_table
输出
France Germany Spain
4000 0 1 1
5000 0 0 2
6000 2 0 0
7000 1 1 0
8000 1 1 0