📜  如何在 R 中创建一个平淡无奇的奥特曼图?

📅  最后修改于: 2022-05-13 01:54:33.915000             🧑  作者: Mango

如何在 R 中创建一个平淡无奇的奥特曼图?

在本文中,我们将讨论如何在 R 编程语言中创建 Bland-Altman 图。

Bland-Altman 图帮助我们可视化两种不同测量技术之间的测量差异。它广泛用于生物化学领域。它有助于确定两种仪器/技术在测量化学反应中的相同结构时的相似程度。

逐步实施

第 1 步:创建示例数据框

要使用 R 语言创建示例数据框,我们可以使用 read.csv()函数从 CSV 文件导入数据集,也可以使用 data.frame()函数创建我们自己的数据框。

第 2 步:计算测量值的差异

接下来,我们将在数据框中添加两个新列,用于存储两个变量的平均值和差异,以便以后绘图。为此,我们将使用分配函数。

句法:

步骤 3:计算置信区间的均值差和限值

为了计算平均差,我们将使用 R 语言的 mean()函数。要计算 90% 置信区间的下限和上限,我们将使用 sd()函数。

句法:

第 4 步:绘制均值差、置信区间和散点图

为了绘制 Bland-Altman 图,我们将使用 ggplot2 包库的 ggplot()函数以及用于 mean_difference 和置信区间的 geom_hline()函数。

句法:

这最终给出了 Bland-Altmon Plot。

示例: Bland-Altmon 图示例

R
# create sample data
Sample_Data <- data.frame(
  var1=c(5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 9, 10, 10, 11),
  var2=c(4, 4, 5, 5, 5, 7, 8, 6, 9, 7, 7, 8, 9, 14))
  
# create new column for average measurement
Sample_Data$average <- rowMeans(Sample_Data) 
  
# create new column for difference measurement
Sample_Data$difference <- Sample_Data$var1 - Sample_Data$var2
  
# calculate mean difference
mean_difference <- mean(Sample_Data$difference)
  
# calculate uppr and lower limits of the 
# Confidence interval of 90%
lower_limit <- mean_difference - 1.91*sd( Sample_Data$difference )
upper_limit <- mean_difference + 1.91*sd( Sample_Data$difference )
  
# load library ggplot2
library(ggplot2)
  
# Plot the Bland-Altmon Plot
ggplot(Sample_Data, aes(x = average, y = difference)) +
  geom_point(size=3) +
  geom_hline(yintercept = mean_difference, color= "red", lwd=1.5) +
  geom_hline(yintercept = lower_limit, color = "green", lwd=1.5) +
  geom_hline(yintercept = upper_limit, color = "green", lwd=1.5)


输出: