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

能否基于一个R DataFrame过滤另一个的行?数据处理需求问询

解决方法

基础R实现

先把df_link中from和to列的所有id合并去重,再筛选df_node里id在这个集合中的行:

# 获取所有有效id(出现在df_link的from或to列)
valid_ids <- unique(c(df_link$from, df_link$to))
# 筛选符合条件的行
df_node_filtered <- df_node[df_node$id %in% valid_ids, ]

dplyr(tidyverse)实现

如果你习惯用tidyverse工具链,可以用filter函数快速完成筛选:

library(dplyr)

df_node_filtered <- df_node %>%
  filter(id %in% unique(c(df_link$from, df_link$to)))

结果说明

处理后df_node_filtered会保留id为a、b、d、f、h、i的行,删除未出现在df_link关联关系中的c、e、g对应的行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 19:01:09