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

R语言如何删除log2fc为0的行且保留case为C7的行

实现条件筛选的方法

方法1:Base R 实现

  • 如果你还没有将0转换为NA,可以直接用逻辑条件筛选,一步完成需求:
# 保留规则:case为c7 或 log2fc不等于0的行
filtered_df <- df[df$case == "c7" | df$log2fc != 0, ]

注:如果你的case列中目标病例存储为大写C7,请将条件里的字符串对应修改为"C7"

  • 如果你已经执行了df[df == 0] <- NA将0转为了NA,可以用以下筛选逻辑:
filtered_df <- df[df$case == "c7" | !is.na(df$log2fc), ]

方法2:dplyr 语法实现(更易读)

library(dplyr)
# 原始数据直接筛选
filtered_df <- df %>%
  filter(case == "c7" | log2fc != 0)

# 若已将0转为NA,替换筛选条件即可
filtered_df <- df %>%
  filter(case == "c7" | !is.na(log2fc))
箱线图绘制示例(基于ggplot2)

你可以新增分组列区分C7和其他样本,再完成可视化:

library(ggplot2)
filtered_df <- filtered_df %>%
  mutate(sample_group = ifelse(case == "c7", "C7病例", "其余样本"))

ggplot(filtered_df, aes(x = sample_group, y = log2fc, fill = sample_group)) +
  geom_boxplot() +
  # 如果需要按基因symbol分开展示,可取消下一行注释
  # facet_wrap(~symbol) +
  labs(x = "样本分组", y = "log2(表达倍数变化)") +
  theme_minimal()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 08:06:03