问题描述
我为我的数据集应用了线性回归 (lm) 模型。我得到了预期的结果(作为值),但输出包含所有类别中的标签名称。 数据集似乎:(只是一个示例数据供参考)
DARM Val hba_diff
Category1 23 2.5
Category2 54 3.8
Category3 56 5.2
Category4 89 6.1
应用以下 lm 模型后的结果:
lm(公式 = hba_diff ~ DARM,data = DARM_data)
Predictors Estimates CI p
(Intercept) 0.00 -0.10 – 0.10 0.957
DARM [Category1] 0.23 -0.30 – 0.75 0.398
DARM [Category2] 0.06 -0.25 – 0.37 0.719
DARM [Category3] 1.00 -2.18 – 4.17 0.538
DARM [Category4] -0.84 -2.67 – 1.00 0.372
我需要删除所有输出行中的“DARM”。 请建议一个代码来删除输出集中的“DARM”术语。
预期输出:
Predictors Estimates CI p
(Intercept) 0.00 -0.10 – 0.10 0.957
Category1 0.23 -0.30 – 0.75 0.398
Category2 0.06 -0.25 – 0.37 0.719
Category3 1.00 -2.18 – 4.17 0.538
Category4 -0.84 -2.67 – 1.00 0.372
解决方法
请在以后提供完整的代码。不确定你是如何得到表格的,我猜你在 tab_model
中使用了 sjplot
函数,所以最简单的方法是提供名称,例如:
library(sjPlot)
df = data.frame(hba_diff=runif(50),DARM = sample(c("Category1","Category2","Category3"),50,replace=TRUE))
fit = lm(hba_diff ~ DARM,data = df)
tab_model(fit,pred.labels = c("Intercept","Category3"))
要绘图,用 ggplot2 做同样的事情(绘图被坐标翻转,所以它是 x 轴):
library(ggplot2)
plot_model(fit) + scale_x_discrete(labels=c("Category2","Category3"))