请举例说明R语言中xtabs()函数用法
时间: 2023-09-25 22:11:14 浏览: 812
`xtabs()`函数是R语言中用于创建交叉(或称为列联表)的函数。交叉表是一种用于展示两个或多个变量之间关系的表格,通常用于统计分析和数据探索。下面是一个使用`xtabs()`函数的示例:
假设我们有一个包含学生姓名、科目和成绩的数据框,如下所示:
```R
df <- data.frame(
姓名 = c("小明", "小红", "小明", "小红", "小刚", "小刚"),
科目 = c("数学", "数学", "语文", "语文", "数学", "英语"),
成绩 = c(80, 75, 90, 85, 95, 80)
)
```
我们想要创建一个交叉表,以观察每个学生在每个科目上的成绩分布情况。可以使用`xtabs()`函数来实现:
```R
xt <- xtabs(成绩 ~ 姓名 + 科目, data = df)
print(xt)
```
输出结果为:
```
科目
姓名 数学 语文 英语
小刚 95 0 80
小明 80 90 0
小红 75 85 0
```
交叉表显示了每个学生在每个科目上的成绩,行表示学生姓名,列表示科目。每个单元格中的值是对应学生在对应科目上的成绩。
`xtabs()`函数的第一个参数是一个公式,指定了需要交叉统计的变量之间的关系。在上述示例中,我们使用`成绩 ~ 姓名 + 科目`表示成绩与姓名和科目之间的关系。第二个参数`data`指定了数据来源,即我们的数据框`df`。
除了简单的交叉表,`xtabs()`函数还可以进行更复杂的操作,例如使用`sum()`、`mean()`等函数来对交叉表进行汇总统计。
这是一个简单的使用示例,你可以根据具体情况和需求灵活使用`xtabs()`函数来创建你需要的交叉表。
阅读全文