使用GRz值绘制剂量反应曲线并计算IC50/IC90的咨询
GR值剂量反应曲线绘制与IC50/IC90计算方案
可直接复用的R分析脚本
脚本适配GR计算器输出的标准结果,依赖drc包做曲线拟合、ggplot2做可视化,首次运行前先执行install.packages(c("drc", "ggplot2"))安装依赖包。
输入数据要求:整理为csv格式,至少包含两列:
drug_concentration:对应给药浓度,数值型,不要带浓度单位GR_value:GR计算器输出的对应浓度孔的GR值,建议每个浓度设置3-6个技术重复
# 加载依赖包 library(drc) library(ggplot2) # 导入数据,替换为本地文件路径 gr_data <- read.csv("your_gr_calculator_output.csv", stringsAsFactors = FALSE) # 拟合四参数对数逻辑斯蒂模型,固定GR值的理论上下限(-1为完全杀伤,1为无生长抑制)提升拟合准确度 gr_fit_model <- drm( formula = GR_value ~ drug_concentration, data = gr_data, fct = LL.4( fixed = c(NA, -1, 1, NA), names = c("slope", "min_response", "max_response", "ec50") ) ) # 提取GR校正后的IC50、IC90:IC50对应GR=0.5的浓度,IC90对应GR=0.1的浓度 ic_metrics <- ED(gr_fit_model, respLev = c(50, 90), interval = "delta") gr_ic50 <- ic_metrics[1, 1] gr_ic90 <- ic_metrics[2, 1] # 生成拟合曲线预测值 conc_seq <- exp(seq(log(min(gr_data$drug_concentration)), log(max(gr_data$drug_concentration)), length.out = 200)) gr_pred <- predict(gr_fit_model, newdata = data.frame(drug_concentration = conc_seq)) # 绘制剂量反应曲线 ggplot() + geom_point(data = gr_data, aes(x = log10(drug_concentration), y = GR_value), size = 2, alpha = 0.6) + geom_line(aes(x = log10(conc_seq), y = gr_pred), color = "#1f77b4", linewidth = 1) + geom_hline(yintercept = 0.5, linetype = "dashed", color = "#d62728") + geom_hline(yintercept = 0.1, linetype = "dashed", color = "#ff7f0e") + annotate( "text", x = log10(gr_ic50), y = 0.56, label = paste0("GR-IC50 = ", round(gr_ic50, 3)), color = "#d62728" ) + annotate( "text", x = log10(gr_ic90), y = 0.16, label = paste0("GR-IC90 = ", round(gr_ic90, 3)), color = "#ff7f0e" ) + labs(x = "log10(药物浓度)", y = "GR值", title = "GR校正剂量反应曲线") + theme_bw()
实操注意事项
- 数据预处理:拟合前先剔除异常重复值,同一浓度下重复孔GR值偏差超过0.2时,优先排查铺板均匀度、加药误差问题,不要直接纳入拟合。
- 模型不要混用:禁止直接套用传统终点法IC50的拟合模型(默认响应范围0~1),GR值的理论下限为-1(对应给药后细胞总量低于初始接种量,即存在细胞杀伤效应),必须固定模型上下限再拟合,否则计算出的IC值会存在系统性偏差。
- 指标定义对齐:GR体系下的IC50代表细胞生长速率被抑制50%(对应GR=0.5),IC90代表生长速率被抑制90%(对应GR=0.1),该指标和传统终点法测得的IC50(给药后活细胞数为对照组50%)生物学含义不同,结果汇报时需要明确标注为GR校正后的IC值,避免混淆。
- 低样本量快速分析:如果处理的样本量少、不想运行代码,可以直接在GR计算器端导入输出的GR值表,选择内置的「Dose-response fitting」功能,可直接导出拟合好的IC50、IC90值和曲线图,无需额外处理。
内容的提问来源于stack exchange,提问作者Omar
相关产品推荐
相关产品推荐

