如何计算 r 中的四分位数范围(附示例)
四分位数范围表示数据集的第一个四分位数(第 25 个百分位数)和第三个四分位数(第 75 个百分位数)之间的差异。
简单来说,它测量中间 50% 值之间的偏差。
IQR = Q3 – Q1
我们可以使用内置的IQR()函数来计算 R 中一组值的四分位数范围:
IQR(x)
以下示例展示了如何在实践中使用此功能。
示例 1:向量的四分位数范围
下面的代码展示了如何计算向量中值的四分位数范围:
#definevector x <- c(4, 6, 6, 7, 8, 12, 15, 17, 20, 21, 21, 23, 24, 27, 28) #calculate interquartile range of values in vector IQR(x) [1] 14.5
示例 2:具有缺失值的向量的四分位距
如果你的向量有缺失值,请务必在计算四分位数范围时指定na.rm=TRUE以忽略缺失值:
#define vector with some missing values x <- c(4, 6, NA, 7, NA, NA, 15, 17, 20, 21, 21, 23, 24, 27, 28) #calculate interquartile range of values in vector IQR(x, na. rm = TRUE ) [1] 10.25
示例 3:数据框中的列四分位距
以下代码显示如何计算数据框中特定列的四分位数范围:
#define data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 6, 8), var4=c(1, 1, 2, 8, 9)) #calculate interquartile range of 'var1' column IQR(df$var1) [1] 1
示例 4:数据框中多列的四分位数范围
以下代码显示如何计算数据框中多列的四分位数范围:
#define data frame df <- data. frame (var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 6, 8), var4=c(1, 1, 2, 8, 9)) #calculate interquartile range of 'var1', 'var2', and 'var4' columns sapply(df[, c(' var1 ', ' var2 ', ' var4 ')], IQR) var1 var2 var4 1 4 7