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

在R中基于案件原被告数据集构建邻接矩阵的问题求助

R原被告配对案件数统计解决方案

问题原因

原有代码仅对单条人员记录做宽表转换,未将同一案件下的原告、被告关联到同一行,因此拆分后每行仅能保留单一身份的人员ID,另一身份字段自动填充为NA,无法形成有效原被告配对。

可行实现代码

library(tidyverse)
# 拆分原告、被告子集
plaintiff_df <- df %>% 
  filter(Status == "Plaintiff") %>% 
  select(Case, plaintiff = Person)
defendant_df <- df %>% 
  filter(Status == "Defendant") %>% 
  select(Case, defendant = Person)
# 按案件编号关联得到同案原被告配对
case_pairs <- inner_join(plaintiff_df, defendant_df, by = "Case")
# 按原被告对分组统计共同案件数
result <- case_pairs %>%
  group_by(plaintiff, defendant) %>%
  summarise(case_count = n(), .groups = "drop")

补充说明

  • 若单个案件存在多个原告/被告,代码会自动生成该案件下所有可能的原被告配对,符合身份互换视为不同配对的统计要求
  • 如需直接生成邻接矩阵用于网络分析,可在上述结果基础上做宽表转换:
adj_matrix <- result %>%
  pivot_wider(
    id_cols = plaintiff,
    names_from = defendant,
    values_from = case_count,
    values_fill = 0
  )

内容的提问来源于stack exchange,提问作者Jacob Baisley

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 16:39:02