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

R语言如何统计因子列间行值相等/不等数量并汇总为指定tibble?

解法1:dplyr包实现(推荐)

直接通过summarise逐列统计即可,利用R逻辑值求和自动转1/0的特性简化代码:

library(dplyr)

final <- df %>% 
  summarise(
    equal = sum(var1 == var2),
    different = sum(var1 != var2),
    total = n()
  )

解法2:base R无依赖实现

如果不想加载第三方包,也可以用基础函数计算后封装为tibble:

equal_count <- sum(df$var1 == df$var2)
final <- tibble(
  equal = equal_count,
  different = nrow(df) - equal_count,
  total = nrow(df)
)

两种方法运行后得到的结果都和你要求的格式完全一致:

> final
# A tibble: 1 × 3
  equal different total
  <int>     <int> <int>
1     2         6     8

内容的提问来源于stack exchange,提问作者Wilson Souza

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 17:45:04