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

如何修改tibble中GeneID列格式 统计两个tibble的共有行数

Tibble共有行统计的GeneID格式对齐方案

两种格式调整的操作都可以直接实现,任选一种统一两个tibble的GeneID格式后,即可完成共有行计数:

格式统一方法

  • 给纯数字GeneID添加Gene前缀
    假设存储纯数字格式GeneID的tibble命名为tb1,直接对列做字符拼接即可,若原列是数值类型需要先转字符型避免报错:

    library(dplyr)
    tb1 <- tb1 %>%
      mutate(GeneID = paste0("Gene", as.character(GeneID)))
    
  • 移除带前缀GeneID中的Gene字段
    假设存储Gene1这类带前缀ID的tibble命名为tb2,用正则替换掉开头的Gene字符串即可,需要匹配数值类型的话可以额外做类型转换:

    tb2 <- tb2 %>%
      mutate(GeneID = gsub("^Gene", "", GeneID))
      # 若要转成数值类型和原数字ID匹配,把上面一行替换为下面的代码
      # mutate(GeneID = as.numeric(gsub("^Gene", "", GeneID)))
    

共有行统计

格式对齐后,直接按GeneID匹配筛选、计数即可:

# 统计tb1中同时存在于tb2的行总数
common_row_num <- tb1 %>%
  filter(GeneID %in% tb2$GeneID) %>%
  nrow()

如果需要匹配所有列的值完全一致才算共有行,可以在格式对齐后用inner_join(tb1, tb2)连接两个表,再统计返回结果的行数即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 01:18:16