Heterogeneity Index

data= read.csv("karpur.CSV")
head(data)
data = data[order(data$k.core, decreasing = TRUE), ]
k = data$k.core
sample = c(1: length(k))
k_percent =(sample * 100) / length(k)

when plotting the output

xlab = "Portion of Total Samples Having Larger or Egual k  "
ylab = "permeabiliy (md)"
plot(k_percent, k, log = 'y' , xlab = xlab, ylab, pch = 10, cex =0.5, col ="#001c49")
## Warning in plot.xy(xy, type, ...): plot type 'permeabiliy (md)' will be
## truncated to first character

so linear model is fitted to the data.

log_k = log(k)
model = lm(log_k~ k_percent)
plot(k_percent,log_k, xlab = xlab, ylab = ylab,pch = 10, cex = 0.5, col = "#001c49")
abline(model, col ='red' , lwd = 2)

calculating HI

new_data = data.frame(k_percent = c(50, 84.1))
predicted_values = predict(model, new_data)
heterogenity_index = (predicted_values[1] - predicted_values[2]) / predicted_values[1]
heterogenity_index
##         1 
## 0.2067853