You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中按第三个变量分组分析两个分类变量的关系?

分组分析分类变量关系的R实现

1. 先修正数据引用错误

你原来的代码里data$frame$ability是笔误,假设你的数据框名称是df,所有变量要从同一个数据框中提取,比如df$cumulative.cat、df$ability、df$major.airport。

2. 生成分组列联表

直接用table()函数传入三个变量,就能按major.airport分组展示cumulative.cat和ability的交叉频数:

# 三维列联表:维度顺序为 major.airport → cumulative.cat → ability
grouped_table <- table(df$major.airport, df$cumulative.cat, df$ability)
print(grouped_table)

输出会分别展示major.airport=0和major.airport=1两组下,cumulative.cat与ability的交叉计数。

3. 计算分组比例(用prop.table)

如果需要看每组内的比例(比如每组中不同cumulative.cat对应的ability占比),可以给prop.table()指定margin参数:

# 按major.airport分组,计算组内的比例(margin=1代表按第一个维度分组)
grouped_prop <- prop.table(grouped_table, margin = 1)
print(grouped_prop)

要是想聚焦其他维度的比例,比如按major.airport和cumulative.cat的组合分组,看ability的占比,把margin设为c(1,2)即可。

4. 更清晰的输出(可选)

如果觉得三维表阅读麻烦,用ftable()把结果转成扁平化表格:

ftable(grouped_table)

内容的提问来源于stack exchange,提问作者sam.min

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:04:58